@font-face{font-family:Manrope;src:url('fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Bricolage;src:url('fonts/BricolageGrotesque-Variable.woff2') format('woff2'),url('fonts/BricolageGrotesque-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/DM-Sans-Variable.woff2') format('woff2'),url('fonts/DM-Sans-Variable.woff') format('woff');font-weight:100 1000;font-display:swap}
:root{--cream:#fff8ed;--ink:#30333b;--blue:#d5e8f4;--denim:#355b7b;--apricot:#f7c2a1;--line:#30333b30;--heading:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.6 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,p,figure{margin:0}img{display:block;max-width:100%;height:auto}figure img{width:100%;height:auto}a{color:inherit;text-underline-offset:5px}a:focus-visible,summary:focus-visible{outline:3px solid var(--denim);outline-offset:5px}h1,h2{font-family:var(--heading);font-weight:750;font-style:normal;letter-spacing:-.035em;word-spacing:.035em;line-height:1.07;text-wrap:balance}p{max-width:49ch}p+p{margin-top:16px}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:14px;line-height:1.5;font-weight:550;margin-bottom:19px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;padding:13px 24px;border:1px solid transparent;border-radius:18px;background:var(--blue);text-decoration:none;font-size:18px;font-weight:600;line-height:1.4}.button span{font-size:24px;line-height:1}.button:hover{border-color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:18px}.text-link span{font-size:23px}.skip{position:absolute;top:-100px;left:20px;z-index:20;background:white;padding:10px}.skip:focus{top:12px}.brand{display:inline-flex;flex-direction:column;text-decoration:none;flex-shrink:0}.brand img{width:250px;height:auto}.brand>span{font-size:10px;letter-spacing:.18em;margin-top:1px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:25px}.desktop-nav{display:flex;align-items:center;gap:28px}.desktop-nav>a{font-size:16px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.desktop-nav>a:hover{text-decoration:underline}.desktop-nav .button{min-height:46px;padding:10px 18px;gap:21px;background:transparent;border:1px solid var(--line);border-radius:14px}.mobile-menu{display:none}.section-label{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:30px}.section-label h2{font-size:clamp(29px,3.5vw,48px)}.about-row{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:55px;max-width:950px;padding-block:60px}.portrait{width:210px}.about-row h2{font-size:38px;margin-bottom:20px}.about-row .text-link{margin-top:15px}.wedding-row{display:grid;grid-template-columns:1fr 300px;gap:60px;align-items:center;border-top:1px solid var(--line);padding-block:45px}.wedding-row>div{max-width:48ch}.wedding-row h2{font-size:36px;margin-bottom:15px}.wedding-row img{width:300px}.wedding-row .text-link{margin-top:14px}.hello{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;border-top:1px solid var(--line);padding-block:65px}.hello h2{font-size:58px}.hello .button{margin-top:23px;background:var(--apricot)}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-block:30px 40px;font-size:16px}.footer p{font-size:16px}.footer>.brand img{width:220px}
/* Direction 01: friendly geometric type, a clear rhythm and small colour accents. */
.a-hero{padding-top:45px}.a-hero-title{display:grid;grid-template-columns:1.55fr 1fr;gap:55px;align-items:end;margin-bottom:36px}.a-hero h1{font-size:clamp(46px,5.2vw,75px);font-weight:750;letter-spacing:-.04em;line-height:1.1}.a-hero h1 span{color:var(--denim)}.hero-copy p{max-width:38ch;margin-bottom:23px}.a-hero-photos{display:grid;grid-template-columns:3fr 1fr;gap:28px;align-items:end}.a-hero-side{max-width:300px}.a-gallery{padding-top:65px}.a-gallery-pair{display:grid;grid-template-columns:1.55fr 1fr;gap:45px;align-items:center}.a-sofa{margin-top:85px}.a-session{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;padding-block:70px 15px}.session-card{background:var(--blue);border-radius:20px;padding:38px}.session-card h2{font-size:39px;margin-bottom:22px}.session-card .text-link{margin-top:17px}
/* Direction 02: chunky expressive type, a stronger scale shift and an offset photo flow. */
.creative{--heading:Bricolage,Arial,sans-serif;--cream:#fff6eb}.creative .button{border-radius:5px;background:var(--apricot)}.creative .desktop-nav .button{background:transparent;border:1px solid var(--line)}.creative h1,.creative h2{font-weight:750;font-variation-settings:'wdth' 100,'opsz' 36;letter-spacing:-.035em}.b-hero{padding-top:35px}.b-hero>.eyebrow{margin-bottom:6px}.b-hero h1{font-size:clamp(90px,11.7vw,169px);line-height:.98;letter-spacing:-.045em;margin-bottom:32px}.b-hero-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:60px;align-items:center}.b-hero-copy{padding-block:15px}.b-hero-line{font-family:Bricolage,Arial,sans-serif;font-size:clamp(42px,5.4vw,77px);font-weight:750;font-variation-settings:'wdth' 100,'opsz' 36;line-height:.99;letter-spacing:-.035em;word-spacing:.035em;margin-bottom:25px}.b-hero-line span{color:var(--denim)}.b-hero-copy>.button{margin-top:25px}.b-gallery{padding-top:65px}.b-gallery .section-label{margin-bottom:34px}.b-gallery .section-label h2{font-size:55px}.b-photo-flow{display:grid;grid-template-columns:repeat(12,1fr);gap:38px 30px;align-items:start}.b-floor{grid-column:1/5;max-width:315px;margin-top:70px}.b-play{grid-column:5/-1}.b-water{grid-column:1/8}.b-sofa{grid-column:9/-1;margin-top:75px}.b-session{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center;padding-block:55px 5px}.b-session h2{font-size:58px}.b-session h2 span{color:var(--denim)}.b-session .text-link{margin-top:20px}.creative .about-row{grid-template-columns:1fr 210px;max-width:none;border-top:1px solid var(--line);margin-top:55px;padding-block:50px}.creative .about-row>.portrait{grid-column:2;grid-row:1}.creative .about-row>div{grid-column:1;grid-row:1}.creative .about-row h2{font-size:48px}.creative .wedding-row h2{font-size:44px}.creative .hello h2{font-size:76px}.creative .hello .button{background:var(--blue)}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.desktop-nav{gap:20px}.brand img{width:220px}.a-hero-title{grid-template-columns:1.3fr 1fr;gap:35px}.a-hero h1{font-size:54px}.hero-copy{font-size:18px}.a-hero-photos{grid-template-columns:2.7fr 1fr}.b-hero-layout{gap:35px}.b-hero h1{font-size:13vw}.b-hero-line{font-size:6vw}.session-card{padding:30px}.session-card h2{font-size:32px}.b-session h2{font-size:48px}.footer>.brand img{width:185px}}
@media(max-width:900px){.desktop-nav{display:none}.site-header{position:relative;min-height:85px;padding-block:20px}.mobile-menu{display:block}.mobile-menu summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;cursor:pointer;font-size:16px;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{font-size:25px}.mobile-menu[open] summary span{transform:rotate(45deg)}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:var(--cream);border:1px solid var(--line);padding:22px;z-index:10;display:flex;flex-direction:column;align-items:start;gap:8px}.mobile-menu nav>a{display:flex;align-items:center;min-height:44px}.a-hero-title{grid-template-columns:1fr;gap:22px}.hero-copy{display:flex;align-items:center;gap:35px;justify-content:space-between}.hero-copy p{margin:0;max-width:34ch}.hero-copy .button{flex-shrink:0}.a-hero h1{font-size:7.7vw}.a-session{gap:28px}.session-card{padding:25px}.about-row{gap:35px}.hello{gap:35px}.hello h2{font-size:48px}.b-hero-layout{grid-template-columns:1.35fr 1fr}.b-hero-copy>p:not(.b-hero-line){font-size:17px}.b-hero-line{font-size:7vw}.b-hero-copy .button{padding-inline:16px;gap:18px;font-size:16px}.b-floor{grid-column:1/5;margin-top:30px}.b-sofa{grid-column:8/-1;margin-top:40px}.b-session{gap:35px}.b-session h2{font-size:43px}.creative .hello h2{font-size:60px}.footer{flex-wrap:wrap}.footer>a:last-child{margin-left:auto}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}body{font-size:18px}.brand img{width:215px}.site-header{gap:20px;padding-block:18px}.brand>span{font-size:9px}.eyebrow{font-size:13px;margin-bottom:16px}.a-hero{padding-top:27px}.a-hero h1{font-size:clamp(37px,10.7vw,60px);letter-spacing:-.04em;line-height:1.08}.a-hero-title{gap:20px;margin-bottom:30px}.hero-copy{display:block}.hero-copy p{max-width:none;margin-bottom:23px}.a-hero-photos{grid-template-columns:repeat(12,1fr);gap:22px}.a-hero-main{grid-column:1/-1}.a-hero-side{grid-column:5/-1;max-width:none}.a-gallery{padding-top:43px}.section-label{display:block;margin-bottom:25px}.section-label h2{font-size:30px}.section-label .text-link{margin-top:14px}.a-gallery-pair{grid-template-columns:1fr;gap:26px}.a-sofa{width:91%;margin:0 0 0 auto}.a-session{grid-template-columns:1fr;gap:28px;padding-block:40px 0}.session-card{border-radius:16px;padding:27px}.session-card h2{font-size:31px}.about-row,.creative .about-row{grid-template-columns:1fr;gap:25px;padding-block:43px}.portrait{width:175px}.about-row h2{font-size:33px}.about-row .eyebrow{margin-bottom:14px}.wedding-row{grid-template-columns:1fr;gap:25px;padding-block:35px}.wedding-row h2{font-size:32px}.wedding-row img{width:76%;margin-left:auto}.hello{grid-template-columns:1fr;gap:24px;padding-block:43px}.hello h2{font-size:43px}.hello .button{margin-top:20px}.footer{display:grid;grid-template-columns:1fr;gap:23px;padding-block:28px}.footer>a:last-child{margin-left:0}.footer>.brand img{width:215px}.b-hero{padding-top:24px}.b-hero>.eyebrow{margin-bottom:12px}.b-hero h1{font-size:clamp(58px,17.1vw,98px);margin-bottom:25px}.b-hero-layout{grid-template-columns:1fr;gap:23px}.b-hero-image{grid-row:2}.b-hero-copy{padding:0}.b-hero-line{font-size:clamp(39px,11.6vw,62px);margin-bottom:19px;line-height:1.05}.b-hero-line br{display:none}.b-hero-copy>p:not(.b-hero-line){font-size:18px}.b-hero-copy .button{font-size:18px;padding:13px 23px;margin-top:24px}.b-gallery{padding-top:43px}.b-gallery .section-label h2{font-size:41px}.b-photo-flow{gap:25px 0}.b-floor{grid-column:1/9;max-width:none;margin-top:0}.b-play{grid-column:1/-1}.b-water{grid-column:1/-1}.b-sofa{grid-column:3/-1;margin-top:0}.b-session{grid-template-columns:1fr;gap:25px;padding-block:40px 0}.b-session h2{font-size:41px}.creative .about-row{margin-top:40px;grid-template-columns:1fr}.creative .about-row>.portrait{grid-column:1;grid-row:1;justify-self:end}.creative .about-row>div{grid-column:1;grid-row:2}.creative .about-row h2{font-size:38px}.creative .wedding-row h2{font-size:36px}.creative .hello h2{font-size:51px}}
@media(max-width:360px){.brand img{width:185px}.site-header{gap:14px}.mobile-menu summary{gap:10px}.button{padding-inline:18px;gap:20px}.session-card{padding:22px}.session-card h2{font-size:28px}.b-session h2{font-size:36px}.creative .hello h2{font-size:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
