:root{--white:#fffdfb;--blush:#f4e2e2;--pink:#cf8f98;--pink-deep:#a8616c;--ink:#302426;--muted:#705f62;--line:#dfcccb;--display:'Playfair Display',Georgia,serif;--body:'DM Sans',Arial,sans-serif;--gutter:clamp(22px,5vw,76px);--section:clamp(76px,11vw,160px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:15px/1.55 var(--body);overflow-x:hidden}.header{height:82px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--white)}a{color:inherit}.logo{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.14em;line-height:1.1}.logo-mark{width:32px;height:32px;border:1px solid var(--pink-deep);border-radius:50%;display:grid;place-items:center;font:italic 21px var(--display);letter-spacing:0;color:var(--pink-deep)}.logo small{font-size:7px;letter-spacing:.18em;font-weight:500;color:var(--muted)}.nav{display:flex;gap:clamp(20px,3vw,48px);margin-left:auto;margin-right:clamp(20px,5vw,76px)}.nav a,.top-cta{font-size:11px;text-decoration:none}.nav a{color:var(--muted)}.top-cta{text-transform:uppercase;letter-spacing:.1em;font-weight:700}.top-cta span,.under-link span{color:var(--pink-deep);margin-left:8px}.menu-toggle{display:none;background:none;border:0;font:600 11px var(--body);text-transform:uppercase;letter-spacing:.1em}.hero{display:grid;grid-template-columns:45% 55%;min-height:calc(100vh - 82px)}.hero-copy{padding:clamp(74px,10vw,145px) var(--gutter) 50px;position:relative}.kicker{color:var(--pink-deep);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin:0 0 28px}.kicker span{display:inline-block;width:27px;border-top:1px solid currentColor;margin:0 10px 3px 0}.hero h1,h2{font:500 clamp(53px,7vw,104px)/.94 var(--display);letter-spacing:-.055em;margin:0}.hero h1 em,h2 em{font-style:italic;color:var(--pink-deep)}.hero-text{max-width:355px;color:var(--muted);margin:31px 0 28px;font-size:16px}.primary-cta,.light-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:16px 21px;text-decoration:none;text-transform:uppercase;letter-spacing:.11em;font-size:10px;font-weight:700}.primary-cta{background:var(--ink);color:var(--white)}.primary-cta b,.light-cta b{font-size:17px;font-weight:400}.hero-meta{position:absolute;bottom:50px;right:var(--gutter);display:flex;gap:13px;font-size:10px;text-transform:uppercase;letter-spacing:.09em;line-height:1.35}.hero-meta strong{font:500 22px var(--display);color:var(--pink-deep)}.hero-photo{background:var(--blush);position:relative;min-height:680px;overflow:hidden}.hero-photo img{width:78%;height:86%;object-fit:cover;position:absolute;left:5%;top:7%;filter:saturate(.83)}.photo-tag{position:absolute;right:7%;bottom:17%;font:500 17px/1 var(--display);text-align:right}.photo-tag i{font-size:13px;color:var(--pink-deep)}.round-stamp{position:absolute;right:7%;top:11%;border:1px solid var(--pink-deep);width:88px;height:88px;border-radius:50%;display:grid;place-content:center;text-align:center;color:var(--pink-deep);font:italic 14px/1.1 var(--display);transform:rotate(10deg)}.round-stamp b{font-size:11px;font-style:normal}.intro,.services,.atelier{padding:var(--section) var(--gutter)}.intro{background:var(--blush);display:grid;grid-template-columns:29% 1fr}.intro h2{margin-bottom:32px}.intro>div{max-width:740px}.intro>div>p,.atelier-copy>p{max-width:420px;color:var(--muted);font-size:16px;margin-left:17%;}.under-link{display:inline-block;text-decoration:none;border-bottom:1px solid var(--pink-deep);padding-bottom:6px;margin:25px 0 0 17%;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.section-lead{display:grid;grid-template-columns:29% 1fr 22%;align-items:end;margin-bottom:62px}.section-lead h2{max-width:600px}.section-lead>p:last-child{color:var(--muted);margin:0}.service-list{border-top:1px solid var(--line);max-width:1120px;margin-left:auto}.service{display:grid;grid-template-columns:8% 1fr auto;gap:22px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}.service>span{font:500 22px var(--display);color:var(--pink-deep)}.service h3{font:500 31px/1 var(--display);margin:0 0 5px}.service p{color:var(--muted);margin:0}.service small{display:block;color:var(--pink-deep);font-size:9px;letter-spacing:.07em;text-transform:uppercase;margin-top:8px}.service>b{font:500 18px var(--display);white-space:nowrap}.results{background:var(--ink);color:var(--white);padding:var(--section) var(--gutter)}.results-copy{display:grid;grid-template-columns:29% 1fr 24%;align-items:end;margin-bottom:58px}.results-copy .kicker{align-self:start}.results-copy>p:last-child{color:#d7c8c7;margin:0 0 4px}.result-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-template-rows:240px 240px;gap:16px}.result-grid figure{margin:0;position:relative;overflow:hidden}.result-grid img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.78)}.result-main{grid-row:span 2}.result-grid figcaption{position:absolute;left:15px;bottom:12px;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.atelier{display:grid;grid-template-columns:40% 1fr;gap:10%;align-items:center}.atelier-copy h2{margin-bottom:25px}.atelier-copy .under-link{margin-left:0}.atelier-photos{position:relative;min-height:530px}.atelier-large{width:73%;height:470px;object-fit:cover}.atelier-small{position:absolute;right:0;bottom:0;width:43%;height:230px;object-fit:cover;border:12px solid var(--white)}.booking{display:grid;grid-template-columns:58% 1fr;align-items:end;gap:10%;padding:var(--section) var(--gutter);background:var(--pink);color:var(--white)}.booking .kicker{color:var(--white)}.booking h2{font-size:clamp(70px,9vw,130px)}.booking-copy p{max-width:310px;margin:0 0 25px;color:#fff5f3}.light-cta{background:var(--white);color:var(--ink)}.booking-copy small{display:block;font-size:10px;line-height:1.6;margin-top:15px;letter-spacing:.05em}footer{display:grid;grid-template-columns:2fr 1.3fr 1fr auto;gap:30px;padding:46px var(--gutter);background:var(--ink);color:var(--white);font-size:11px}footer label{color:var(--pink);font-size:9px;letter-spacing:.14em;text-transform:uppercase}footer p{margin:8px 0 0}.copyright{align-self:end;color:#b6a5a5;font-size:10px;white-space:nowrap}@media(max-width:760px){.header{height:70px}.nav,.top-cta{display:none}.menu-toggle{display:block}.nav.is-open{display:flex;position:absolute;left:0;right:0;top:70px;margin:0;padding:22px var(--gutter);background:var(--white);border-bottom:1px solid var(--line);flex-direction:column;gap:14px}.hero{display:block;min-height:0}.hero-copy{padding:65px var(--gutter) 52px}.hero h1{font-size:clamp(57px,16vw,75px)}.hero-text{font-size:14px;margin-top:25px}.primary-cta{width:100%;max-width:260px}.hero-meta{position:static;margin-top:38px}.hero-photo{min-height:425px}.hero-photo img{width:84%;height:86%;left:6%;top:7%}.photo-tag{right:5%;bottom:15%;font-size:13px}.round-stamp{right:5%;top:8%;width:70px;height:70px;font-size:11px}.intro,.services,.atelier{padding:78px var(--gutter)}.intro{display:block}.intro h2{font-size:clamp(48px,14vw,65px)}.intro>div>p,.atelier-copy>p,.under-link{margin-left:0}.section-lead{display:block;margin-bottom:39px}.section-lead h2{font-size:clamp(48px,14vw,65px)}.section-lead>p:last-child{margin-top:24px;max-width:310px}.service{grid-template-columns:34px 1fr;gap:10px;padding:21px 0}.service h3{font-size:26px}.service>b{grid-column:2;margin-top:-4px}.service small{font-size:8px}.results{padding:78px var(--gutter)}.results-copy{display:block;margin-bottom:38px}.results-copy h2{font-size:clamp(50px,15vw,70px)}.results-copy>p:last-child{margin-top:24px}.result-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 150px;gap:9px}.result-main{grid-column:span 2;grid-row:auto}.atelier{display:block}.atelier-copy h2{font-size:clamp(50px,15vw,70px)}.atelier-photos{min-height:370px;margin-top:43px}.atelier-large{height:315px;width:79%}.atelier-small{height:175px;width:47%;border-width:8px}.booking{display:block;padding:78px var(--gutter)}.booking h2{font-size:clamp(70px,20vw,95px);margin-bottom:45px}.light-cta{width:100%;gap:10px}.booking-copy p{font-size:14px}footer{grid-template-columns:1fr 1fr;padding:38px var(--gutter);gap:25px}.footer-logo{grid-column:1/-1}.copyright{grid-column:1/-1}}
