
@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@500&family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

:root{
  --ink:#292929;--blue:#5d7186;--blue-deep:#455a6d;--mist:#edf1f4;
  --paper:#fff;--warm:#f8f7f4;--line:#d7dee4;--max:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.6rem 1rem;z-index:100}
.announcement{background:var(--blue);color:#fff;text-align:center;padding:.48rem 1rem;font-size:.78rem;letter-spacing:.15em;text-transform:uppercase}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(41,41,41,.1);backdrop-filter:blur(12px)}
.nav{height:92px;max-width:var(--max);margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.logo{width:245px}.logo img{width:100%}
.nav-links{display:flex;align-items:center;gap:25px;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.nav-links a{position:relative}.nav-links a:not(.btn):after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--blue);transition:.25s}.nav-links a:hover:after,.nav-links a.active:after{width:100%}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:.75rem 1.25rem;border:1px solid var(--blue);background:var(--blue);color:#fff;text-transform:uppercase;font-size:.78rem;letter-spacing:.12em;font-weight:600;cursor:pointer;transition:.2s}
.btn:hover{background:var(--blue-deep);border-color:var(--blue-deep);transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover{background:var(--ink);color:#fff}
.btn-light{background:#fff;color:var(--blue);border-color:#fff}.btn-light:hover{background:var(--mist);color:var(--blue-deep)}
.menu-toggle{display:none;background:none;border:0;font-size:1.6rem;color:var(--ink)}
.hero{min-height:700px;display:grid;grid-template-columns:44% 56%;background:var(--warm)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:80px max(7vw,36px)}
.eyebrow{color:var(--blue);font-size:.77rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin:0 0 1.2rem}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.04;margin:0}
h1{font-size:clamp(3.5rem,6.5vw,7rem);letter-spacing:-.045em}
h2{font-size:clamp(2.6rem,4.5vw,5rem);letter-spacing:-.035em}
h3{font-size:1.75rem}
.hero h1 em{color:var(--blue);font-weight:500}
.hero-copy>p:not(.eyebrow){font-size:1.15rem;max-width:520px;margin:1.7rem 0 2.2rem}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-image{position:relative;min-height:580px;background:url('assets/hero.webp') center/cover}
.hero-image:after{content:'ONE SERVICE. OR THE WHOLE DAMN WEDDING.';position:absolute;right:0;bottom:0;background:var(--blue);color:#fff;padding:1.2rem 2rem;font-size:.74rem;letter-spacing:.18em}
.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--ink);color:#fff}
.proof{padding:25px;text-align:center;border-right:1px solid #4b4b4b;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.proof:last-child{border-right:0}
.section{padding:110px max(6vw,28px)}.inner{max-width:var(--max);margin:auto}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.lead{font-family:'Playfair Display',Georgia,serif;font-size:clamp(1.45rem,2.2vw,2.15rem);line-height:1.4}
.body-large{font-size:1.08rem}
.ink-section{background:var(--ink);color:#fff}.blue-section{background:var(--blue);color:#fff}.mist-section{background:var(--mist)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:48px}.section-head p{max-width:520px;margin:0}
.journey-label{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);margin-bottom:.75rem}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service-card{position:relative;min-height:280px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;background:#fff;transition:.25s}
.service-card:hover{background:var(--mist);transform:translateY(-4px);box-shadow:0 18px 40px rgba(38,55,70,.08);z-index:2}
.service-card .num{color:var(--blue);font-size:.75rem;letter-spacing:.15em}.service-card h3{margin:.9rem 0}.service-card p{margin:0 0 1.4rem;color:#565656}.service-card .link{margin-top:auto;font-size:.75rem;letter-spacing:.14em;font-weight:600;text-transform:uppercase;color:var(--blue)}
.image-split{display:grid;grid-template-columns:55% 45%;min-height:660px}.image-panel{background-position:center;background-size:cover}.content-panel{padding:90px 8vw;display:flex;flex-direction:column;justify-content:center}.content-panel p{font-size:1.05rem}
.counter{font-family:'Playfair Display',serif;font-size:clamp(5rem,10vw,9rem);line-height:.9;color:var(--blue)}
.price-tease{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ccd5dc;border:1px solid #ccd5dc;margin-top:48px}
.price-tile{background:#fff;padding:26px;min-height:160px}.price-tile small{display:block;text-transform:uppercase;letter-spacing:.12em;color:#697887}.price-tile strong{display:block;font-family:'Playfair Display',serif;font-size:2rem;color:var(--blue);margin-top:1rem}
.quote{max-width:900px;margin:auto;text-align:center}.stars{letter-spacing:.35em;color:var(--blue)}.quote blockquote{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,3.4vw,3.35rem);line-height:1.25;margin:1.2rem 0}.quote cite{font-style:normal;text-transform:uppercase;font-size:.75rem;letter-spacing:.15em}
.final-cta{text-align:center;padding:110px 24px;background:var(--blue);color:#fff}.final-cta p{margin:1.3rem auto 2rem;max-width:580px}
.page-hero{padding:100px max(6vw,28px) 80px;background:var(--mist)}.page-hero .inner{max-width:1000px;margin-left:max(0px,calc((100vw - var(--max))/2))}.page-hero h1{max-width:900px}.page-hero .lead{max-width:800px}
.service-feature{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:60px 0;border-bottom:1px solid var(--line);align-items:start}.service-feature:last-child{border:0}
.service-feature .meta{color:var(--blue);text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}.service-feature h2{font-size:clamp(2.2rem,4vw,4rem);margin:.6rem 0 1rem}.feature-price{font-family:'Playfair Display',serif;font-size:2rem;color:var(--blue)}
.pill-list{display:flex;gap:8px;flex-wrap:wrap;margin:1.3rem 0}.pill{border:1px solid var(--line);padding:.38rem .7rem;font-size:.78rem}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pricing-card{border:1px solid var(--line);padding:32px;background:#fff;display:flex;flex-direction:column;min-height:320px}.pricing-card.featured{background:var(--blue);color:#fff}.pricing-card .price{font-family:'Playfair Display',serif;font-size:2.5rem;color:var(--blue);margin:.8rem 0}.pricing-card.featured .price{color:#fff}.pricing-card ul{padding-left:1.1rem}.pricing-card .btn{margin-top:auto;align-self:start}
.note{background:var(--mist);border-left:4px solid var(--blue);padding:20px 24px;margin-top:40px}
.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.story-card{min-height:490px;position:relative;background-size:cover;background-position:center;color:#fff;display:flex;align-items:end;padding:35px;overflow:hidden}.story-card:before{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(0,0,0,.78))}.story-card>div{position:relative}.story-card h3{font-size:2.2rem}.story-card p{margin:.5rem 0 0}
.story-more{margin-top:20px;padding:72px max(5vw,32px);background:var(--mist);text-align:center}
.story-more .eyebrow{color:var(--blue)}
.story-more h2{max-width:1050px;margin:12px auto 0;font-size:clamp(2.6rem,5vw,5.8rem);line-height:.96;color:var(--blue)}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.principle span{font-family:'Playfair Display',serif;color:var(--blue);font-size:3rem}.principle h3{margin:.7rem 0}
.reviews-grid{columns:3;column-gap:20px}.review{break-inside:avoid;border:1px solid var(--line);padding:28px;margin:0 0 20px;background:#fff}.review .stars{font-size:.8rem}.review blockquote{font-family:'Playfair Display',serif;font-size:1.25rem;line-height:1.5;margin:1rem 0}.review cite{font-style:normal;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.enquiry-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;align-items:start}.contact-card{background:var(--blue);color:#fff;padding:38px;position:sticky;top:130px}.contact-card a{text-decoration:underline;text-underline-offset:4px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label,.services-legend{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;font-weight:600}.field input,.field textarea,.field select{border:1px solid #b9c3cc;padding:14px;background:#fff;border-radius:0;min-height:52px}.field textarea{min-height:140px;resize:vertical}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px}.check{border:1px solid var(--line);padding:12px;display:flex;gap:9px;align-items:center}.check input{accent-color:var(--blue);width:18px;height:18px}
.form-status{display:none;background:var(--mist);padding:18px;margin-top:20px}
.site-footer{background:var(--ink);color:#fff;padding:70px max(6vw,28px) 25px}.footer-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.footer-mark{font-family:'Playfair Display',serif;font-size:2rem}.footer-links{display:flex;flex-direction:column;gap:7px;font-size:.9rem}.footer-bottom{max-width:var(--max);margin:55px auto 0;padding-top:20px;border-top:1px solid #4c4c4c;display:flex;justify-content:space-between;font-size:.75rem;color:#b9b9b9}
.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){
  .nav-links{display:none;position:absolute;top:92px;left:0;right:0;background:#fff;padding:25px;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line)}.nav-links.open{display:flex}.menu-toggle{display:block}
  .hero{grid-template-columns:1fr}.hero-copy{padding-top:70px;padding-bottom:70px}.hero-image{min-height:520px}
  .service-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)}.price-tease{grid-template-columns:repeat(2,1fr)}
  .reviews-grid{columns:2}.enquiry-layout{grid-template-columns:1fr}.contact-card{position:static}
}
@media(max-width:700px){
  .announcement{font-size:.66rem}.nav{height:76px;padding:0 18px}.logo{width:190px}.nav-links{top:76px}
  .hero{min-height:0}.hero-copy{padding:55px 24px}.hero-image{min-height:420px}.hero-image:after{left:0;right:auto;padding:1rem;font-size:.65rem}
  .proof-strip{grid-template-columns:1fr}.proof{border-right:0;border-bottom:1px solid #4b4b4b}
  .section{padding:75px 22px}.intro-grid,.service-feature,.image-split{grid-template-columns:1fr}.image-panel{min-height:430px}.content-panel{padding:70px 25px}
  .section-head{display:block}.section-head p{margin-top:1rem}.service-grid,.pricing-grid,.price-tease{grid-template-columns:1fr}.service-card{min-height:230px}
  .story-grid,.principles{grid-template-columns:1fr}.reviews-grid{columns:1}.form-grid,.checks{grid-template-columns:1fr}.field.full{grid-column:auto}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}
}

/* Josie & Andrew — three-day country-house real wedding */
.ja-hero>img{object-position:center 51%;filter:contrast(1.02)}
.ja-hero .rw-hero-shade{background:linear-gradient(90deg,rgba(19,34,46,.86) 0%,rgba(19,34,46,.51) 43%,rgba(19,34,46,.08) 76%)}
.ja-hero .rw-hero-copy{max-width:1040px}
.ja-hero .rw-hero-copy h1{font-size:clamp(3.8rem,6.7vw,8rem)}
.ja-opening h2{font-size:clamp(3.7rem,6.4vw,7.4rem)}
.ja-room-statement img{object-position:center 52%}
.ja-search{padding:105px max(7vw,30px);display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw;align-items:end;background:#fff}
.ja-search h2{font-size:clamp(3.8rem,6.2vw,7rem);line-height:.86;color:var(--blue)}
.ja-search h2 em{color:#233445;font-weight:500}
.ja-search>div:last-child{max-width:700px}
.ja-search .lead{font:500 clamp(1.55rem,2.25vw,2.25rem)/1.3 'Playfair Display',serif;color:#233445}
.ja-takeover{background:var(--blue-deep);color:#fff;padding:105px max(6vw,30px);display:grid;grid-template-columns:.78fr 1.22fr;gap:30px 8vw}
.ja-takeover-title{align-self:start}
.ja-takeover-title h2{font-size:clamp(4rem,6.7vw,7.7rem);line-height:.82}
.ja-takeover-title h2 em{color:#dbe5ed;font-weight:500}
.ja-takeover-title>p:last-child{max-width:500px}
.ja-service-wall{border-top:1px solid rgba(255,255,255,.55);align-self:start}
.ja-service-wall span{display:block;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.55);font:500 clamp(1.35rem,2.3vw,2.4rem)/1.15 'Playfair Display',serif}
.ja-takeover-images{grid-column:1/-1;height:620px;margin-top:35px}
.ja-takeover-images figure{width:100%;height:100%;margin:0;overflow:hidden}
.ja-takeover-images img{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.ja-friday{background:var(--blue);color:#fff}
.ja-friday .mag-kicker{color:#dce6ed}
.ja-morning{padding:110px max(5vw,28px);display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start;background:#fff}
.ja-morning-copy{position:sticky;top:145px}
.ja-morning-copy h2{font-size:clamp(3.1rem,4.8vw,5.7rem);line-height:.94}
.ja-morning-copy h2 em{color:var(--blue);font-weight:500}
.ja-morning-copy p:not(.mag-kicker){max-width:570px}
.ja-morning-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:430px 330px 500px;gap:12px}
.ja-morning-grid figure{margin:0;overflow:hidden}
.ja-morning-grid img{width:100%;height:100%;object-fit:cover}
.ja-prep-room{grid-column:1/-1}
.ja-morning-grid figure:last-child{grid-column:1/-1}
.ja-morning-grid figure:last-child img{object-position:center 43%}
.ja-venue-reality{padding:105px max(8vw,32px);background:#e8eef3;text-align:center;overflow:hidden}
.ja-venue-reality h2{font-size:clamp(3.7rem,6.7vw,7.8rem);line-height:.9;color:var(--blue)}
.ja-venue-reality .lead{max-width:900px;margin:30px auto 18px;font:500 clamp(1.55rem,2.25vw,2.2rem)/1.3 'Playfair Display',serif;color:#233445}
.ja-venue-reality>p:not(.mag-kicker):not(.lead):not(.scribble){max-width:790px;margin:18px auto}
.ja-venue-reality .scribble{margin:22px auto 0;color:var(--blue);font-size:clamp(2.7rem,4.4vw,4.9rem);text-shadow:none;transform:rotate(-3deg)}
.ja-ceremony{min-height:690px;display:grid;grid-template-columns:1fr 1fr;background:var(--blue);color:#fff}
.ja-ceremony-copy{padding:90px max(6vw,35px);display:flex;flex-direction:column;justify-content:center}
.ja-ceremony-copy h2{font-size:clamp(3.1rem,4.8vw,5.8rem);line-height:.93}
.ja-ceremony-copy p:not(.mag-kicker){max-width:610px}
.ja-ceremony figure{margin:0;overflow:hidden}
.ja-ceremony img{width:100%;height:100%;object-fit:cover;object-position:center}
.ja-reception-heading{max-width:1160px;margin:auto;padding:110px max(5vw,28px);text-align:center}
.ja-reception-heading h2{font-size:clamp(3.7rem,6vw,7rem);line-height:.9;color:var(--blue)}
.ja-reception-heading>p:last-child{max-width:760px;margin:28px auto 0;font-size:1.08rem}
.ja-reception-gallery{height:620px;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 12px}
.ja-reception-gallery figure{margin:0;overflow:hidden}
.ja-reception-gallery img{width:100%;height:100%;object-fit:cover}
.ja-canapes,.ja-emotion{min-width:0}
.ja-first-look{padding:105px max(7vw,30px);display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#fff}
.ja-first-look>div{border-top:4px solid var(--blue);padding-top:28px}
.ja-first-look h2{font-size:clamp(2.9rem,4.6vw,5.4rem);line-height:.94;color:var(--blue)}
.ja-first-look .lead{font:500 clamp(1.35rem,1.9vw,1.8rem)/1.35 'Playfair Display',serif}
.ja-party{min-height:700px;display:grid;grid-template-columns:1.1fr .9fr;background:#e8eef3}
.ja-party figure{margin:0;overflow:hidden}
.ja-party img{width:100%;height:100%;object-fit:cover}
.ja-party>div{padding:80px max(6vw,35px);display:flex;flex-direction:column;justify-content:center}
.ja-party h2{font-size:clamp(3.3rem,5vw,6rem);line-height:.92;color:var(--blue)}
.ja-party p:not(.mag-kicker){max-width:580px}
.ja-party-image{height:720px;position:relative;overflow:hidden;color:#fff}
.ja-party-image>img{width:100%;height:100%;object-fit:cover;object-position:center 48%}
.ja-party-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,35,47,.78),rgba(20,35,47,.04) 67%)}
.ja-party-image>div{position:absolute;z-index:2;left:max(6vw,30px);right:max(6vw,30px);bottom:58px}
.ja-party-image span{display:block;font:500 clamp(2.4rem,4vw,4.8rem)/.95 'Playfair Display',serif}
.ja-party-image strong{display:block;margin-top:10px;font:500 clamp(2.8rem,4.7vw,5.7rem)/.9 'Caveat',cursive;transform:rotate(-2deg)}
.ja-sunday em{color:var(--blue)}
.ja-quote blockquote{max-width:1300px}
.ja-review{padding:105px max(7vw,30px);display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;background:var(--blue);color:#fff}
.ja-review-heading{position:sticky;top:145px;align-self:start}
.ja-review-heading h2{font-size:clamp(3.2rem,5.2vw,6.3rem);line-height:.92}
.ja-review-copy{border-top:1px solid rgba(255,255,255,.58)}
.ja-review-copy p{margin:0;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.58);font:500 clamp(1.25rem,1.8vw,1.72rem)/1.4 'Playfair Display',serif}
.ja-finale h2{color:var(--blue);font-size:clamp(3.8rem,6vw,7rem);line-height:.9}

@media(max-width:1000px){
  .ja-search,.ja-takeover,.ja-morning,.ja-first-look,.ja-review{grid-template-columns:1fr;gap:45px}
  .ja-takeover-images{height:540px}.ja-morning-copy,.ja-review-heading{position:static}
  .ja-morning-grid{grid-template-rows:380px 300px 430px}
  .ja-ceremony,.ja-party{grid-template-columns:1fr}.ja-ceremony figure,.ja-party figure{height:600px}
  .ja-reception-gallery{height:560px}
}
@media(max-width:700px){
  .ja-hero>img{object-position:62% center}.ja-hero .rw-hero-copy h1{font-size:clamp(3.1rem,14vw,4.8rem)}
  .ja-search,.ja-takeover,.ja-morning,.ja-first-look,.ja-review{padding:75px 22px}
  .ja-opening h2{font-size:3.9rem}.ja-search h2{font-size:3.8rem}
  .ja-takeover-title h2{font-size:4.5rem}.ja-service-wall span{font-size:1.45rem}
  .ja-takeover-images{height:420px;margin-top:10px}.ja-takeover-images figure{height:100%}
  .ja-morning-grid{display:block}.ja-morning-grid figure{height:330px;margin-bottom:10px}.ja-morning-grid figure:last-child{height:470px}
  .ja-venue-reality{padding:75px 22px}.ja-venue-reality h2{font-size:3.9rem}
  .ja-ceremony{display:flex;flex-direction:column}.ja-ceremony-copy{padding:75px 22px}.ja-ceremony figure{height:430px}
  .ja-reception-heading{padding:75px 22px}.ja-reception-heading h2{font-size:3.8rem}
  .ja-reception-gallery{height:auto;display:block;padding:0 10px}.ja-reception-gallery figure{height:350px;margin-bottom:10px}
  .ja-first-look h2{font-size:3.5rem}.ja-party{display:flex;flex-direction:column}.ja-party figure{height:430px}.ja-party>div{padding:70px 22px}.ja-party h2{font-size:3.7rem}
  .ja-party-image{height:560px}.ja-party-image>img{object-position:56% center}.ja-party-image>div{left:22px;right:22px;bottom:35px}.ja-party-image span{font-size:2.3rem}.ja-party-image strong{font-size:3rem}
  .ja-review-heading h2{font-size:3.75rem}.ja-review-copy p{font-size:1.25rem}
  .ja-finale h2{font-size:4.1rem}
}

/* Real wedding feature — Georgie & Callum, Ios */
.real-feature-page{color:#233445;background:#fff}
.rw-hero{height:min(820px,82vh);min-height:650px;position:relative;overflow:hidden;color:#fff}
.rw-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 50%}
.rw-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,34,46,.78) 0%,rgba(19,34,46,.48) 46%,rgba(19,34,46,.06) 78%)}
.rw-hero-copy{position:absolute;left:max(6vw,34px);bottom:70px;max-width:920px}
.rw-hero-copy h1{font-size:clamp(4rem,7.4vw,8.7rem);line-height:.81;letter-spacing:-.055em}
.rw-hero-copy h1 em{color:#dbe5ed;font-weight:500}
.rw-hero-copy>p:last-child{margin:25px 0 0;font-size:.76rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.rw-facts{display:grid;grid-template-columns:repeat(4,1fr);background:#edf2f6;border-bottom:1px solid #cfdae2}
.rw-facts>div{padding:27px max(2.3vw,20px);border-right:1px solid #cfdae2}
.rw-facts>div:last-child{border:0}
.rw-facts span{display:block;margin-bottom:5px;color:var(--blue);font-size:.67rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.rw-facts strong{font:500 clamp(1.15rem,1.7vw,1.55rem) 'Playfair Display',serif}
.rw-opening{max-width:1320px;margin:auto;padding:110px max(5vw,28px);display:grid;grid-template-columns:.76fr 1.24fr;gap:9vw;align-items:center}
.rw-opening h2{font-size:clamp(4rem,7vw,8rem);line-height:.78;color:var(--blue)}
.rw-opening h2 em{color:#233445;font-weight:500}
.rw-opening-body{max-width:690px}
.rw-opening-body .lead{font-size:clamp(1.65rem,2.5vw,2.5rem);line-height:1.25;color:#233445}
.rw-opening-body p:not(.lead){font-size:1.02rem}
.rw-statement-image{height:680px;margin:0;position:relative;overflow:hidden}
.rw-statement-image img{width:100%;height:100%;object-fit:cover;object-position:center 54%}
.rw-statement-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,42,57,.05),rgba(23,42,57,.1) 45%,rgba(23,42,57,.76))}
.rw-statement-image figcaption{position:absolute;z-index:2;right:max(6vw,30px);bottom:55px;max-width:570px;color:#fff;text-align:right}
.rw-statement-image figcaption span{display:block;font:500 clamp(2rem,3.8vw,4.5rem)/.95 'Playfair Display',serif}
.rw-statement-image figcaption strong{display:block;margin-top:12px;font:500 clamp(2.1rem,3.6vw,4rem)/.9 'Caveat',cursive;transform:rotate(-3deg)}
.rw-date-chapter{display:grid;grid-template-columns:.52fr 1.48fr;gap:8vw;padding:105px max(7vw,30px);align-items:start}
.rw-date{font:500 clamp(5rem,11vw,12rem)/.7 'Playfair Display',serif;color:rgba(255,255,255,.35);letter-spacing:-.07em}
.rw-date span{display:block;margin:20px 0 0;font:600 .75rem 'DM Sans',sans-serif;letter-spacing:.15em;color:#fff}
.rw-date-chapter>div:last-child{max-width:840px}
.rw-date-chapter h2{font-size:clamp(3rem,5.6vw,6.7rem);line-height:.9}
.rw-date-chapter .lead{font-size:clamp(1.45rem,2.1vw,2.05rem);line-height:1.3;margin-top:30px}
.rw-welcome{background:var(--blue);color:#fff}
.rw-welcome .mag-kicker{color:#dce6ed}
.rw-weather{position:relative;padding:95px max(8vw,32px);background:#e8eef3;text-align:center;overflow:hidden}
.rw-weather h2{font-size:clamp(4rem,8vw,9rem);color:var(--blue)}
.rw-weather>p:not(.mag-kicker):not(.scribble){max-width:760px;margin:22px auto;font-size:1.05rem}
.rw-weather .scribble{margin:8px auto 2px;color:var(--blue);font-size:clamp(3.2rem,5vw,5.5rem);transform:rotate(-5deg);text-shadow:none}
.rw-prep{max-width:1320px;margin:auto;padding:110px max(5vw,28px);display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start}
.rw-prep-copy{position:sticky;top:145px}
.rw-prep-copy h2{font-size:clamp(3.2rem,5vw,5.8rem)}
.rw-prep-copy h2 em{color:var(--blue);font-weight:500}
.rw-prep-copy p:not(.mag-kicker){max-width:590px}
.rw-prep-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:420px 330px;gap:12px}
.rw-prep-grid figure{margin:0;overflow:hidden}
.rw-prep-grid figure:first-child{grid-column:1/-1}
.rw-prep-grid img{width:100%;height:100%;object-fit:cover}
.rw-ceremony{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:minmax(560px,auto) 430px;background:var(--blue-deep);color:#fff}
.rw-ceremony-words{padding:90px max(6vw,35px);display:flex;flex-direction:column;justify-content:center}
.rw-ceremony-words h2{font-size:clamp(3.2rem,5vw,6rem)}
.rw-ceremony-words>p:last-of-type{max-width:610px}
.rw-ceremony-words blockquote{margin:35px 0 0;padding-top:25px;border-top:1px solid rgba(255,255,255,.45);font:500 clamp(1.6rem,2.4vw,2.5rem)/1.25 'Playfair Display',serif}
.rw-ceremony-photo,.rw-confetti,.rw-ring{margin:0;overflow:hidden}
.rw-ceremony-photo img,.rw-confetti img,.rw-ring img{width:100%;height:100%;object-fit:cover}
.rw-confetti{grid-column:1;grid-row:2}.rw-ring{grid-column:2;grid-row:2}
.rw-reception-intro{padding:105px max(7vw,30px);display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;background:#fff;align-items:end}
.rw-reception-intro h2{font-size:clamp(4.2rem,7vw,8rem);line-height:.83}
.rw-reception-intro h2 em{color:var(--blue);font-weight:500}
.rw-reception-intro>div:last-child{max-width:690px}
.rw-reception-intro .lead{font-size:clamp(1.55rem,2.3vw,2.25rem);line-height:1.3}
.rw-fizz-gallery{height:720px;display:grid;grid-template-columns:1.12fr .88fr;grid-template-rows:1fr 1fr;gap:12px;padding:0 12px}
.rw-fizz-gallery figure{margin:0;overflow:hidden}.rw-fizz-main{grid-row:1/-1}
.rw-fizz-gallery img{width:100%;height:100%;object-fit:cover}
.rw-sunset{display:grid;grid-template-columns:1.12fr .88fr;min-height:650px;background:#e8eef3}
.rw-sunset figure{margin:0;overflow:hidden}
.rw-sunset img{width:100%;height:100%;object-fit:cover}
.rw-sunset>div{padding:80px max(6vw,35px);display:flex;flex-direction:column;justify-content:center}
.rw-sunset h2{font-size:clamp(3rem,4.7vw,5.8rem)}
.rw-sunset p:not(.mag-kicker){max-width:580px}
.rw-first-dance{height:760px;position:relative;overflow:hidden;color:#fff}
.rw-first-dance>img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.rw-first-dance:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,39,52,.76),rgba(22,39,52,.04) 66%)}
.rw-first-dance>div{position:absolute;z-index:2;left:max(6vw,32px);top:50%;transform:translateY(-50%);max-width:640px}
.rw-first-dance h2{font-size:clamp(3.5rem,6vw,7rem)}
.rw-first-dance p:last-child{max-width:500px;font-size:1.08rem}
.rw-afterparty{background:#fff;color:#233445}
.rw-afterparty .rw-date{color:#c3d0da}.rw-afterparty .rw-date span{color:var(--blue)}
.rw-afterparty h2{color:var(--blue)}
.rw-work{display:grid;grid-template-columns:.8fr 1.2fr;background:var(--blue);color:#fff;padding:100px max(6vw,30px);gap:8vw}
.rw-work-title{position:sticky;top:145px;align-self:start}
.rw-work-title h2{font-size:clamp(4rem,6.8vw,8rem);line-height:.82}
.rw-work-title h2 em{color:#dbe5ed;font-weight:500}
.rw-work-title>p:last-child{max-width:470px;font-size:1.05rem}
.rw-work-list{border-top:1px solid rgba(255,255,255,.6)}
.rw-work-list>div{display:grid;grid-template-columns:55px 1fr;gap:8px 20px;padding:27px 0;border-bottom:1px solid rgba(255,255,255,.6)}
.rw-work-list span{grid-row:1/3;color:#dbe5ed;font:500 1.6rem 'Playfair Display',serif}
.rw-work-list strong{font:500 clamp(1.4rem,2.2vw,2rem) 'Playfair Display',serif}
.rw-work-list p{margin:0;max-width:620px;color:#eef3f6}
.rw-quote{padding:120px max(6vw,28px);background:#fff;text-align:center}
.rw-quote blockquote{max-width:1180px;margin:25px auto;font:500 clamp(3.6rem,7vw,8.4rem)/.95 'Playfair Display',serif;color:var(--blue);letter-spacing:-.045em}
.rw-quote>p:last-child{font:500 clamp(1.9rem,3vw,3.2rem) 'Caveat',cursive;transform:rotate(-3deg)}
.rw-thanks{padding:100px max(6vw,28px);background:#e8eef3;text-align:center}
.rw-thanks h2{font-size:clamp(3rem,5vw,5.7rem)}
.rw-thanks>p:not(.mag-kicker){max-width:720px;margin:25px auto 32px;font-size:1.08rem}

@media(max-width:900px){
  .rw-facts{grid-template-columns:1fr 1fr}.rw-facts>div:nth-child(2){border-right:0}.rw-facts>div{border-bottom:1px solid #cfdae2}
  .rw-opening,.rw-prep,.rw-reception-intro,.rw-sunset,.rw-work{grid-template-columns:1fr;gap:45px}
  .rw-prep-copy,.rw-work-title{position:static}.rw-prep-grid{grid-template-rows:380px 300px}
  .rw-ceremony{grid-template-columns:1fr 1fr;grid-template-rows:auto 430px 330px}.rw-ceremony-words{grid-column:1/-1}.rw-ceremony-photo{grid-column:1/-1}.rw-confetti{grid-column:1;grid-row:3}.rw-ring{grid-column:2;grid-row:3}
  .rw-sunset figure{height:570px}.rw-first-dance{height:680px}
}
@media(max-width:700px){
  .rw-hero{min-height:650px;height:78vh}.rw-hero>img{object-position:58% center}.rw-hero-shade{background:linear-gradient(90deg,rgba(19,34,46,.76),rgba(19,34,46,.2))}.rw-hero-copy{left:22px;right:22px;bottom:48px}.rw-hero-copy h1{font-size:clamp(3.5rem,16vw,5.4rem)}
  .rw-facts{grid-template-columns:1fr 1fr}.rw-facts>div{padding:20px 16px}.rw-facts strong{font-size:1rem}
  .rw-opening{padding:75px 22px}.rw-opening h2{font-size:4.2rem}.rw-statement-image{height:520px}.rw-statement-image img{object-position:57% center}.rw-statement-image figcaption{left:24px;right:24px;bottom:35px}
  .rw-date-chapter{grid-template-columns:1fr;padding:75px 22px;gap:45px}.rw-date{font-size:6rem}.rw-date-chapter h2{font-size:3.35rem}
  .rw-weather{padding:70px 22px}.rw-prep{padding:75px 22px}.rw-prep-grid{display:block}.rw-prep-grid figure{height:330px;margin-bottom:10px}
  .rw-ceremony{display:block}.rw-ceremony-words{padding:70px 22px}.rw-ceremony-photo,.rw-confetti,.rw-ring{height:330px;margin:10px}
  .rw-reception-intro{padding:75px 22px}.rw-reception-intro h2{font-size:4.6rem}.rw-fizz-gallery{height:auto;display:block;padding:0 10px}.rw-fizz-gallery figure{height:360px;margin-bottom:10px}
  .rw-sunset{gap:0}.rw-sunset figure{height:430px}.rw-sunset>div{padding:70px 22px}.rw-first-dance{height:650px}.rw-first-dance>img{object-position:62% center}.rw-first-dance>div{left:22px;right:22px}.rw-first-dance h2{font-size:3.75rem}
  .rw-work{padding:75px 22px}.rw-work-title h2{font-size:4.7rem}.rw-work-list>div{grid-template-columns:42px 1fr}.rw-work-list p{grid-column:2}
  .rw-quote{padding:80px 22px}.rw-quote blockquote{font-size:3.5rem}.rw-thanks{padding:75px 22px}
}

/* Comparison page: Services 2 — current editorial page with pricing in context */
.services-page-2 .service-price-stack{margin-top:25px;border-top:1px solid var(--blue)}
.services-page-2 .service-price-stack article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
.services-page-2 .service-price-stack h3{font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:600;line-height:1.35;letter-spacing:.05em;text-transform:uppercase}
.services-page-2 .service-price-stack strong{font:500 1.38rem 'Playfair Display',serif;color:var(--blue);white-space:nowrap}
.services-page-2 .service-price-stack small{grid-column:1/-1;color:#667582;font-size:.72rem;line-height:1.35}
.services-page-2 .service-price-stack.compact article{padding:10px 0}
.services-page-2 .service-price-stack.compact h3{font-size:.73rem}
.services-page-2 .package-notes{margin:25px 0;border-top:1px solid var(--line)}
.services-page-2 .package-notes p{margin:0;padding:14px 0;border-bottom:1px solid var(--line);font-size:.9rem}

/* Comparison page: Pricing 2 — image-free, magazine-style price edition */
.pricing-page-2{color:#233445;background:#fff}
.price2-hero{max-width:1320px;margin:auto;padding:105px max(5vw,28px) 95px;display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end}
.price2-hero h1{font-size:clamp(4.8rem,9vw,9.5rem);line-height:.78;letter-spacing:-.065em}
.price2-hero h1 em{color:var(--blue);font-weight:500}
.price2-intro{padding-bottom:8px;border-left:4px solid var(--blue);padding-left:32px}
.price2-intro .lead{font-size:clamp(1.45rem,2vw,2rem);line-height:1.32;margin-top:0}
.price2-text-link{display:inline-block;margin-top:10px;color:var(--blue);font-size:.73rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--blue);padding-bottom:4px}
.price2-edition{border-top:1px solid var(--ink)}
.price2-chapter{padding:90px max(5vw,28px);display:grid;grid-template-columns:minmax(300px,.72fr) minmax(500px,1.28fr);gap:8vw;background:#fff}
.price2-heading{max-width:530px;position:sticky;top:170px;align-self:start}
.price2-heading>span{font:500 clamp(4rem,7vw,7rem)/.8 'Playfair Display',serif;color:var(--blue);opacity:.45}
.price2-heading>p{margin:28px 0 10px;font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--blue)}
.price2-heading h2{font-size:clamp(2.5rem,4vw,4.8rem);line-height:1}
.price2-lines{border-top:1px solid currentColor}
.price2-lines>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,auto);gap:8px 30px;padding:27px 0;border-bottom:1px solid currentColor;align-items:start}
.price2-lines h3{font-size:clamp(1.45rem,2.2vw,2.25rem)}
.price2-lines p{grid-column:1;margin:0;max-width:590px;color:#667582;font-size:.88rem;line-height:1.55}
.price2-lines strong{grid-column:2;grid-row:1/3;text-align:right;font:500 clamp(1.35rem,2vw,2rem) 'Playfair Display',serif;color:var(--blue);white-space:nowrap}
.price2-lines strong small{display:block;margin-top:5px;font:600 .63rem 'DM Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase}
.price2-dark{background:var(--blue-deep);color:#fff}
.price2-dark .price2-heading>span,.price2-dark .price2-heading>p,.price2-dark .price2-lines strong{color:#fff}
.price2-dark .price2-lines{border-color:#fff}.price2-dark .price2-lines>div{border-color:rgba(255,255,255,.38)}.price2-dark .price2-lines p{color:#dbe3e9}
.price2-blue{background:var(--blue);color:#fff}
.price2-blue .price2-heading>span,.price2-blue .price2-heading>p,.price2-blue .price2-lines strong{color:#fff}
.price2-blue .price2-lines>div{border-color:rgba(255,255,255,.42)}
.price2-downloads>div{grid-template-columns:minmax(0,1fr) minmax(230px,auto)}
.price2-downloads>div>span,.price2-downloads>div>.price2-link-group{grid-column:2;grid-row:1/3;text-align:right;align-self:center;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.price2-link-group{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.price2-link-group a{color:var(--blue)}.price2-link-group a:hover{text-decoration:underline}
.price2-beauty-lines>div{padding:20px 0}
.price2-beauty-lines h3{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:500}
.price2-close{text-align:center;padding:105px 28px 115px;background:#e8eef3}
.price2-close .eyebrow{justify-content:center}
.price2-close h2{margin:0 auto 32px;max-width:950px;font-size:clamp(3rem,5vw,5.8rem)}
@media(max-width:900px){
  .price2-hero,.price2-chapter{grid-template-columns:1fr;gap:45px}
  .price2-heading{position:static;max-width:720px}
}
@media(max-width:700px){
  .services-page-2 .service-price-stack{margin-top:18px}
  .price2-hero{padding:70px 22px 65px;gap:35px}
  .price2-hero h1{font-size:clamp(4.2rem,22vw,6.5rem)}
  .price2-intro{padding-left:20px}
  .price2-chapter{padding:65px 22px;gap:35px}
  .price2-heading>span{font-size:4rem}
  .price2-lines>div,.price2-downloads>div{grid-template-columns:1fr;gap:7px;padding:22px 0}
  .price2-lines p{grid-column:1}
  .price2-lines strong,.price2-downloads>div>span,.price2-downloads>div>.price2-link-group{grid-column:1;grid-row:auto;text-align:left;margin-top:4px}.price2-link-group{align-items:flex-start}
}

/* Editorial revision */
.nav{height:126px}.logo{width:250px;display:flex;align-items:center;align-self:stretch}.logo img{width:250px;height:auto;max-height:116px;object-fit:contain}
.eyebrow{display:flex;align-items:center;gap:.7rem}.eyebrow:before{content:'';width:8px;height:8px;border-radius:50%;background:var(--blue);flex:0 0 auto}
.blue-section .eyebrow:before,.ink-section .eyebrow:before,.final-cta .eyebrow:before,.site-footer .eyebrow:before{background:#fff}
.editorial-services{background:#fff}
.photo-journal{height:660px;display:grid;grid-template-columns:1.15fr .8fr .7fr;gap:22px;align-items:start;margin:10px 0 90px}
.photo-journal figure{margin:0;overflow:hidden;height:430px}.photo-journal .photo-tall{height:620px}.photo-journal .photo-offset{margin-top:120px;height:390px}
.photo-journal img,.editorial-band img,.editorial-duo img,.price-image img,.review-image-section img{width:100%;height:100%;object-fit:cover}
.service-list{border-top:1px solid var(--ink)}
.service-line{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:25px;padding:26px 5px;border-bottom:1px solid var(--line);transition:.25s}
.service-line span{font-size:.73rem;text-transform:uppercase;letter-spacing:.14em;color:var(--blue)}.service-line h3{font-size:clamp(1.6rem,2.5vw,2.6rem)}.service-line i{font-style:normal;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase}
.service-line:hover{padding-left:18px;color:var(--blue)}
.service-grid{border:0}.service-card{border:0;border-top:1px solid var(--line);background:transparent;padding-left:0}.service-card:hover{box-shadow:none;transform:none}
.price-tease{background:transparent;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.price-tile{padding:28px 18px;background:transparent;border-right:1px solid var(--line)}.price-tile:last-child{border-right:0}
.editorial-band{height:620px;margin:90px -6vw;position:relative}.editorial-band figcaption{position:absolute;right:0;bottom:0;background:#fff;padding:22px 30px;font-family:'Playfair Display',serif;font-size:1.4rem}.editorial-band.reverse figcaption{right:auto;left:0}
.editorial-duo{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin:90px -3vw}.editorial-duo figure{height:580px;margin:0}.editorial-duo figure:last-child{height:440px;margin-top:90px}
.pill{border:0;border-bottom:1px solid var(--blue);padding:.25rem 0;margin-right:1rem}
.price-editorial{display:grid;grid-template-columns:.85fr 1.3fr;gap:7vw;align-items:start}.price-image{height:760px;margin:0;position:sticky;top:150px}.price-image figcaption{font-family:'Playfair Display',serif;font-size:1.35rem;margin-top:15px}
.price-list{border-top:1px solid var(--ink)}.price-row{display:grid;grid-template-columns:110px minmax(0,1fr) minmax(150px,auto);gap:20px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}.price-row>span:first-child{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.price-row h3{font-size:1.65rem}.price-row>strong{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--blue);font-weight:500}.price-row>strong small{display:block;margin-top:5px;font-family:'Montserrat',sans-serif;font-size:.64rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#667582}.price-row:hover h3{font-style:italic}.price-row-detailed{align-items:start}.price-detail{max-width:510px;margin:7px 0 0;font-size:.82rem;line-height:1.55;color:#667582}.price-download{max-width:240px;text-align:right;font-size:.7rem!important;font-weight:700;line-height:1.5;letter-spacing:.07em!important;color:var(--blue);cursor:default}.price-row-beauty{align-items:start}.price-breakdown{display:grid;gap:7px}.price-breakdown span{display:flex;justify-content:space-between;gap:24px;font-size:.75rem;line-height:1.4;color:#536675}.price-breakdown strong{font-family:'Playfair Display',serif;font-size:1rem;color:var(--blue);font-weight:600}.pricing-footnote{max-width:820px;margin:70px 0 0;font-size:1.05rem;border-top:1px solid var(--ink);padding-top:25px}.pricing-footnote+.pricing-footnote{margin-top:22px;border-top:0;padding-top:0;font-size:.84rem;color:#667582}.pricing-extras{background:var(--blue);color:#fff}.pricing-extras .eyebrow,.pricing-extras h2{color:#fff}.pricing-extras .eyebrow:before{background:#fff}
.reviews-grid{columns:1}.review{border:0;border-bottom:1px solid var(--line);padding:50px 0;margin:0;display:grid;grid-template-columns:130px 1fr 220px;align-items:start;gap:40px}.review blockquote{font-size:clamp(1.55rem,2.5vw,2.65rem);margin:0}.review cite{padding-top:.6rem}.review-image-section{height:570px;position:relative;overflow:hidden}.review-image-section p{position:absolute;right:5vw;bottom:35px;background:var(--blue);color:#fff;padding:18px 24px;font-family:'Playfair Display',serif;font-size:1.45rem}
.note{background:transparent;border-left:0;border-top:1px solid var(--ink)}
.check{border:0;border-bottom:1px solid var(--line);padding:14px 0}
@media(max-width:1000px){.nav{height:108px}.nav-links{top:108px}.photo-journal{height:540px}.photo-journal .photo-tall{height:520px}.price-editorial{grid-template-columns:1fr}.price-image{position:relative;top:0;height:520px}.review{grid-template-columns:90px 1fr}.review cite{grid-column:2}}
@media(max-width:700px){.nav{height:94px}.logo{width:200px}.logo img{width:200px;max-height:88px}.nav-links{top:94px}.photo-journal{height:auto;grid-template-columns:1.25fr .75fr;gap:10px;margin-bottom:55px}.photo-journal figure,.photo-journal .photo-tall,.photo-journal .photo-offset{height:310px;margin:0}.photo-journal .photo-tall{grid-row:span 2;height:630px}.service-line{grid-template-columns:80px 1fr}.service-line i{grid-column:2}.editorial-band{height:420px;margin:60px -22px}.editorial-band figcaption{font-size:1rem;padding:14px}.editorial-duo{margin:60px -10px;gap:10px}.editorial-duo figure{height:380px}.editorial-duo figure:last-child{height:300px;margin-top:50px}.price-row{grid-template-columns:1fr;gap:9px}.price-row>strong{font-size:1.25rem}.price-download{max-width:none;text-align:left}.price-breakdown span{justify-content:flex-start}.price-breakdown strong{margin-left:auto}.review{grid-template-columns:1fr;gap:15px}.review cite{grid-column:auto}.review-image-section{height:420px}}


/* Full magazine homepage */
.magazine-home{background:#f7f9fb;color:#233445}
.magazine-home h1,.magazine-home h2,.magazine-home h3{color:inherit}
.magazine-header{position:absolute;inset:0 0 auto;background:linear-gradient(rgba(18,31,42,.34),rgba(18,31,42,0));border:0;backdrop-filter:none;color:#fff}.magazine-header .nav{height:112px}.magazine-header .logo{width:235px}.magazine-header .logo img{width:235px;max-height:105px}.magazine-header .nav-links{font-size:.69rem;gap:24px}
.btn-ghost-light{background:rgba(40,57,72,.16);border-color:rgba(255,255,255,.75);color:#fff;backdrop-filter:blur(4px)}.btn-ghost-light:hover{background:var(--blue);color:#fff;border-color:#fff}
.mag-hero{height:auto;min-height:780px;position:relative;background:url('/assets/jaw-hero-sunset.webp') 52% 52%/cover;color:#fff;display:flex;align-items:flex-start}.mag-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,31,40,.68) 0%,rgba(20,31,40,.38) 42%,rgba(20,31,40,.05) 72%,rgba(20,31,40,.12))}
.mag-hero-copy{position:relative;z-index:1;width:min(1220px,100%);margin:0 auto;padding:145px 28px 80px}.mag-hero h1{font-size:clamp(3.6rem,6.7vw,7.2rem);max-width:900px;letter-spacing:-.045em}.mag-hero-copy>p:not(.mag-kicker){font-size:1.06rem;line-height:1.45;margin:18px 0 25px;max-width:680px}.mag-hero-copy>.hero-attitude{display:inline-block;width:max-content;max-width:100%;font-size:clamp(1.15rem,1.8vw,1.55rem);font-weight:700;letter-spacing:.01em;background:rgba(63,89,111,.86);backdrop-filter:blur(7px);border-left:5px solid #fff;padding:10px 16px;margin:-5px 0 24px}.hero-actions{margin-bottom:12px}.btn-hero-dark{background:#263b4a;color:#fff;border-color:#263b4a}.btn-hero-dark:hover{background:#fff;color:#263b4a;border-color:#fff}
.mag-kicker{font-size:.7rem;letter-spacing:.21em;text-transform:uppercase;font-weight:600;margin:0 0 8px}.mag-kicker.blue{color:var(--blue)}
.scribble{font:500 clamp(1.7rem,2.7vw,3rem)/.9 'Caveat',cursive;transform:rotate(-7deg);text-shadow:0 2px 4px rgba(10,20,30,.82),0 7px 20px rgba(10,20,30,.68)}.hero-scribble{position:absolute;right:6vw;bottom:55px;z-index:2;text-align:center;font-size:clamp(3rem,4.4vw,5.2rem);line-height:.86}.hero-scribble,.mag-intro .scribble,.food-drink-scribble,.destination-scribble,.real-scribble,.bundle-scribble{text-shadow:none}.real-scribble{position:absolute;right:7vw;top:45px;text-align:right;font-size:clamp(2.7rem,4vw,4.8rem);line-height:.88}.price-scribble{position:absolute;right:4vw;bottom:23px}.mag-image .scribble,.mag-duo .scribble,.mag-bundle .scribble{position:absolute;right:28px;bottom:26px;z-index:2;max-width:75%;color:#fff;text-align:right}.mag-duo .food-drink-scribble,.mag-duo .destination-scribble{left:28px;right:auto;top:26px;bottom:auto;text-align:left;font-size:clamp(2.3rem,3.4vw,3.8rem);line-height:.88}.mag-duo .food-drink-scribble,.mag-duo .destination-scribble,.mag-bundle .bundle-scribble{color:var(--blue)}.mag-bundle .bundle-scribble{font-size:clamp(2.3rem,3.4vw,3.8rem);line-height:.88}.mag-image .scribble{font-size:clamp(2.6rem,3.8vw,4.2rem);line-height:.88}
.mag-duo .food-drink-scribble{top:auto;bottom:26px}
.mag-bundle .bundle-scribble{left:28px;right:auto;top:26px;bottom:auto;text-align:left}
.mag-trust{min-height:112px;background:#fff;display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(4vw,25px);border-bottom:1px solid #cfd9e1}.mag-trust>div{display:flex;align-items:center;justify-content:center;gap:18px;border-right:1px solid #ccd6de;padding:18px}.mag-trust>div:last-child{border:0}.line-icon{font-size:2.2rem;color:var(--blue)}.mag-trust p{font-size:.75rem;margin:0;line-height:1.45}.mag-trust strong{display:block;letter-spacing:.13em;text-transform:uppercase;font-size:.68rem}
.mag-intro{display:grid;grid-template-columns:47% 53%;max-width:1440px;margin:auto;background:#fff}.mag-copy{padding:80px max(5vw,40px)}.mag-copy h2{font-size:clamp(3rem,4.8vw,5.4rem);margin-bottom:25px}.mag-copy p{max-width:610px}.mag-image{margin:0;position:relative;min-height:610px}.mag-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);object-position:center 52%}
.mag-services,.mag-reviews{padding:55px max(5vw,26px) 65px;background:#fff}.mag-heading{max-width:1280px;margin:auto;display:flex;justify-content:space-between;align-items:end;gap:30px}.mag-heading h2{font-size:clamp(2.5rem,4vw,4.8rem)}.mag-heading em{font-weight:500}.mag-heading>a{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600}
.mag-card-grid{max-width:1280px;margin:25px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.mag-card{height:390px;position:relative;color:#fff;overflow:hidden}.mag-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(10,21,30,.8))}.mag-card img{width:100%;height:100%;object-fit:cover;transition:.6s}.mag-card:hover img{transform:scale(1.035)}.mag-card span{position:absolute;z-index:2;left:20px;right:28px;bottom:20px;line-height:1.25}.mag-card b{display:block;font:500 1.65rem 'Playfair Display',serif;text-transform:uppercase}.mag-card i{position:absolute;right:15px;bottom:15px;z-index:2;font-style:normal;font-size:1.4rem}
.mag-real{height:560px;position:relative;color:#fff;overflow:hidden}.mag-real>img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.mag-real-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,32,44,.78),rgba(18,32,44,.12) 70%)}.mag-real-copy{position:absolute;left:max(5vw,35px);top:50%;transform:translateY(-50%);max-width:410px}.mag-real-copy h2{font-size:clamp(3rem,5vw,5.7rem)}.mag-real-copy em{font-weight:500}.mag-real-copy p{font-size:1.15rem}
.mag-team{background:#fff;padding:32px max(5vw,28px);display:grid;grid-template-columns:270px 1fr;align-items:center;gap:30px;border-bottom:1px solid #d7e0e6}.mag-team h3{font-family:'DM Sans',sans-serif;font-size:.85rem;font-weight:400}.team-run{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.team-run span{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--blue)}
.mag-pricing{background:#f4f7f9;color:#263b4a;padding:70px max(5vw,28px);display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:7vw;align-items:center;border-top:1px solid #d6e0e7;border-bottom:1px solid #d6e0e7}.pricing-statement h2{font-size:clamp(2.55rem,4vw,4.8rem);max-width:690px}.pricing-proof{border-left:4px solid var(--blue);padding:8px 0 8px 34px}.pricing-proof>p{max-width:690px;font-size:1.08rem;margin:0 0 24px}.pricing-points{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}.pricing-points span{background:#fff;border:1px solid #cbd7df;padding:9px 13px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pricing-points span:before{content:'✓';color:var(--blue);margin-right:7px}
.mag-duo{display:grid;grid-template-columns:1fr 1fr;background:#fff}.mag-duo article{display:grid;grid-template-columns:1fr 1.08fr;min-height:490px;border-right:1px solid #d9e1e7}.duo-copy{padding:55px 30px 45px max(5vw,35px)}.duo-copy h2{font-size:clamp(2.3rem,3.2vw,4rem)}.mag-duo figure,.mag-bundle figure{margin:0;position:relative;overflow:hidden}.mag-duo figure img,.mag-bundle figure img{width:100%;height:100%;object-fit:cover}
.mag-bundle{display:grid;grid-template-columns:1fr 1.15fr;background:#fff;min-height:410px;border-top:1px solid #d8e0e7}.mag-bundle>div{padding:60px max(5vw,35px)}.mag-bundle h2{font-size:clamp(2.5rem,4vw,4.8rem)}.mag-bundle p{max-width:580px}
.review-run{max-width:1280px;margin:30px auto 0;display:grid;grid-template-columns:repeat(3,1fr)}.review-run blockquote{margin:0;padding:10px 35px 10px 0;border-right:1px solid #cfd8df;font-size:.9rem;display:flex;flex-direction:column;min-height:175px}.review-run blockquote+blockquote{padding-left:35px}.review-run blockquote:last-child{border:0}.review-run span{display:block;color:var(--blue);letter-spacing:.2em}.review-run cite{display:block;margin-top:auto;padding-top:18px;font-style:normal;font-weight:600}
.mag-gallery{background:#fff;padding:90px max(5vw,28px) 105px}.gallery-heading{max-width:1280px;margin:0 auto 38px;display:flex;align-items:end;justify-content:space-between;gap:25px}.gallery-heading h2{font-size:clamp(2.8rem,4.5vw,5.2rem);max-width:800px}.gallery-heading a{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding-bottom:10px}.gallery-editorial{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.25fr .72fr 1fr;grid-template-rows:260px 260px;gap:14px}.gallery-editorial figure{margin:0;overflow:hidden}.gallery-editorial img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.gallery-editorial figure:hover img{transform:scale(1.025)}.gallery-party,.gallery-bluebells{grid-row:1/3}.gallery-dance,.gallery-crowd{grid-column:3}
.mag-final{background:#e8eef3;text-align:center;padding:105px max(5vw,28px) 110px;border-top:1px solid #cfdae2}.mag-final>div{max-width:900px;margin:auto}.mag-final h2{font-size:clamp(3rem,5vw,5.5rem)}.mag-final>div>p:not(.mag-kicker){max-width:720px;margin:22px auto 32px;font-size:1.12rem}.mag-final .actions{justify-content:center}.compact-footer{padding:5px max(5vw,28px) 18px}.compact-footer .footer-bottom{margin-top:0}
@media(max-width:1000px){.magazine-header .nav-links{top:112px;background:rgba(255,255,255,.97)}.magazine-header .nav-links a{color:#1f3140}.magazine-header .menu-toggle{color:#fff}.mag-card-grid{grid-template-columns:repeat(2,1fr)}.mag-team{grid-template-columns:1fr}.mag-pricing{grid-template-columns:1fr;gap:30px;padding-top:55px;padding-bottom:55px}.pricing-proof{max-width:760px}.mag-duo{grid-template-columns:1fr}.gallery-editorial{grid-template-columns:1.15fr .85fr;grid-template-rows:420px 280px}.gallery-party{grid-row:1}.gallery-bluebells{grid-row:1/3}.gallery-dance{grid-column:1;grid-row:2}.gallery-crowd{display:none}}
@media(max-width:700px){.magazine-header .nav{height:90px}.magazine-header .logo,.magazine-header .logo img{width:185px;max-height:85px}.magazine-header .nav-links{top:90px}.mag-hero{min-height:780px;height:auto;background-position:63% center}.mag-shade{background:linear-gradient(90deg,rgba(20,31,40,.82),rgba(20,31,40,.3))}.mag-hero-copy{padding:120px 22px 115px}.mag-hero-copy>.hero-attitude{font-size:1.02rem}.hero-actions{gap:10px}.hero-actions .btn{background:#fff;color:#263b4a;border-color:#fff}.hero-scribble{right:20px;bottom:28px;max-width:280px;font-size:2.2rem}.mag-trust{grid-template-columns:1fr}.mag-trust>div{border-right:0;border-bottom:1px solid #ccd6de;justify-content:flex-start}.mag-intro{grid-template-columns:1fr}.mag-copy{padding:60px 24px}.mag-image{min-height:470px}.mag-services,.mag-reviews{padding:55px 20px}.mag-heading{display:block}.mag-heading>a{display:inline-block;margin-top:15px}.mag-card-grid{grid-template-columns:1fr 1fr;gap:8px}.mag-card{height:300px}.mag-card span{left:12px;right:12px;bottom:15px;font-size:.82rem}.mag-card b{font-size:1.25rem}.mag-real{height:600px}.mag-real-copy{left:24px;right:24px}.real-scribble{top:30px;right:20px;max-width:270px;font-size:2.2rem}.mag-team{padding:30px 22px}.team-run{display:grid;grid-template-columns:1fr 1fr}.mag-pricing{padding:52px 22px}.pricing-proof{border-left:0;border-top:4px solid var(--blue);padding:25px 0 0}.mag-duo article{grid-template-columns:1fr;min-height:0}.duo-copy{padding:55px 24px}.mag-duo figure{height:380px}.mag-bundle{grid-template-columns:1fr}.mag-bundle>div{padding:55px 24px}.mag-bundle figure{height:400px}.review-run{grid-template-columns:1fr}.review-run blockquote,.review-run blockquote+blockquote{min-height:0;padding:25px 0;border-right:0;border-bottom:1px solid #cfd8df}.review-run cite{margin-top:18px}.mag-gallery{padding:70px 20px 75px}.gallery-heading{display:block;margin-bottom:28px}.gallery-heading a{display:inline-block;margin:14px 0 0}.gallery-editorial{grid-template-columns:1fr 1fr;grid-template-rows:330px 230px;gap:8px}.gallery-party{grid-column:1/3;grid-row:1}.gallery-bluebells{display:none}.gallery-dance{grid-column:1;grid-row:2}.gallery-crowd{display:block;grid-column:2;grid-row:2}.mag-final{padding:78px 22px 82px}.mag-final .actions{justify-content:center}}

/* Services page — editorial, image-led and easy to scan */
.services-page{color:#233445;background:#fff}
.services-page .services-hero{padding-bottom:66px}
.services-page .services-hero h1{font-size:clamp(3.25rem,6vw,6.2rem);line-height:.98;letter-spacing:-.035em;max-width:1040px}
.services-page .services-hero .lead{font-size:1.12rem;max-width:820px}
.service-jump{max-width:var(--max);margin:0 auto;padding:24px 28px;display:flex;flex-wrap:wrap;gap:9px 24px;border-bottom:1px solid var(--line)}
.service-jump a{font-size:.72rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--blue);padding:6px 0;border-bottom:1px solid transparent}
.service-jump a:hover{border-bottom-color:var(--blue)}
.services-editorial{padding-top:20px}
.service-block{padding:78px 0 86px;border-bottom:1px solid var(--line);scroll-margin-top:130px}
.service-block:last-child{border-bottom:0;padding-bottom:25px}
.services-page .service-feature{padding:0 0 42px;border:0;gap:8vw}
.services-page .service-feature .lead{font-family:'Playfair Display',serif;font-size:clamp(1.55rem,2.25vw,2.25rem);line-height:1.25;margin-top:0}
.services-page .service-feature p:not(.lead):not(.feature-price):not(.award-line):not(.service-footnote):not(.destination-note){max-width:670px}
.services-page .feature-price{font-size:clamp(1.65rem,2.3vw,2.35rem);line-height:1.3;margin:.8rem 0 1.2rem}
.services-page .feature-price sup{font-size:.48em;vertical-align:super}
.award-line{max-width:470px;margin:1.35rem 0 0;padding-top:14px;border-top:1px solid var(--blue);color:var(--blue);font-size:.74rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;line-height:1.55}
.service-footnote{font-size:.8rem;color:#667582;border-top:1px solid var(--line);padding-top:14px;margin-top:25px;max-width:650px}
.service-footnote sup{font-size:.78em}
.destination-note{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin:22px 0 0}
.service-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px}
.service-actions .btn{min-height:45px;font-size:.7rem;padding:.68rem 1rem}
.service-download[aria-disabled="true"]{cursor:default}
.service-story{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;height:340px}
.service-story figure{margin:0;overflow:hidden;background:var(--mist)}
.service-story img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.service-story figure:hover img{transform:scale(1.025)}
.service-story.story-pair{grid-template-columns:repeat(2,minmax(0,1fr));height:390px;gap:14px}
.service-story.story-pair figure:nth-child(2){height:100%;margin:0}
.service-story.story-single{display:block;height:520px}
.service-story.story-single figure{width:100%;height:100%}
.service-story.story-single img{object-position:center 43%}
.services-deal{padding-top:90px;padding-bottom:96px}
.services-deal .eyebrow{justify-content:center;color:#fff;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}
.services-deal h2{font-size:clamp(3rem,5.4vw,6rem);margin:.45rem 0 0}
.services-deal p:not(.eyebrow){max-width:720px;font-size:1.08rem}
@media(max-width:900px){
  .services-page .service-feature{gap:45px}
  .service-story{height:285px;gap:10px}
}
@media(max-width:700px){
  .services-page .services-hero{padding:65px 22px 48px}
  .services-page .services-hero h1{font-size:clamp(2.9rem,14vw,4.4rem)}
  .service-jump{padding:20px 22px;gap:6px 18px}
  .services-editorial{padding-top:0}
  .service-block{padding:62px 0 66px;scroll-margin-top:100px}
  .services-page .service-feature{padding-bottom:32px;gap:20px}
  .services-page .service-feature .lead{font-size:1.55rem}
  .service-story{height:auto;grid-template-columns:1fr;grid-template-rows:none;gap:10px}
  .service-story figure,.service-story figure:first-child,.service-story figure:nth-child(2),.service-story figure:nth-child(3){display:block;grid-column:auto;grid-row:auto;height:300px;margin:0}
  .service-story.story-pair{height:auto;grid-template-columns:1fr;grid-template-rows:none;gap:10px}
  .service-story.story-pair figure,.service-story.story-pair figure:first-child,.service-story.story-pair figure:nth-child(2){display:block;grid-column:auto;grid-row:auto;height:290px;margin:0}
  .service-story.story-single{display:block;height:390px}
  .service-story.story-single figure,.service-story.story-single figure:first-child{display:block;width:100%;height:100%;margin:0}
  .service-actions{align-items:stretch}
  .service-actions .btn{width:100%}
}

/* Real-wedding-specific crop and scale overrides */
.rw-hero.ja-hero>img{object-position:center 51%}
.rw-opening.ja-opening h2{font-size:clamp(3.7rem,6.4vw,7.4rem)}
.rw-statement-image.ja-room-statement img{object-position:center 52%}
@media(max-width:700px){.rw-hero.ja-hero>img{object-position:62% center}}
