@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-latin.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-italic-latin.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#f4f1e9;--ink:#24241f;--muted:#66665b;--line:#cfcec2;--olive:#575c45;--white:#fffef9;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;--pad:clamp(24px,5.5vw,96px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:400 14px/1.8 var(--sans);-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:default}img{display:block;width:100%;height:auto}button{border:0;background:none}::selection{background:#d4d6c3;color:var(--ink)}:focus-visible{outline:2px solid currentColor;outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.035em}h1{font-size:clamp(64px,8.5vw,144px)}h2{font-size:clamp(46px,5.2vw,84px)}h3{font-size:clamp(32px,3vw,48px)}em{font-weight:400}p+p{margin-top:1.2em}.eyebrow,.text-link,.nav-links,.menu-button,.button,.caption,.small-label{font-size:10px;line-height:1.6;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.eyebrow{display:block;margin-bottom:24px}.muted{color:var(--muted)}.container{padding-inline:var(--pad)}.section{padding-block:110px}.text-link{display:inline-flex;gap:30px;align-items:center;padding:12px 0;border-bottom:1px solid currentColor}.text-link .arrow{font-size:20px;line-height:1;letter-spacing:0;transition:transform .2s}.text-link:hover .arrow{transform:translateX(5px)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:18px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);min-height:56px;transition:background .2s,color .2s}.button:hover{background:var(--olive);border-color:var(--olive)}.button.light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.skip{position:fixed;top:10px;left:10px;z-index:100;background:var(--paper);padding:10px 18px;transform:translateY(-200%)}.skip:focus{transform:translateY(0)}
.site-header{height:106px;padding:20px var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:30;background:var(--paper)}.site-header.overlay{position:absolute;left:0;top:0;width:100%;color:var(--white);background:transparent;border-color:#fff5}.brand{display:flex;flex-direction:column;align-items:center;line-height:1}.brand-main{font:400 44px/.95 var(--serif);letter-spacing:.13em;margin-right:-.13em}.brand-sub{font-size:8px;letter-spacing:.4em;margin-top:10px;margin-right:-.4em}.nav-links{display:flex;align-items:center;gap:33px;font-size:9px}.nav-links a{position:relative;padding-block:8px}.nav-links a:after{content:'';position:absolute;left:0;bottom:1px;width:0;height:1px;background:currentColor;transition:width .25s}.nav-links a:hover:after,.nav-links a[aria-current=page]:after{width:100%}.nav-contact{border:1px solid currentColor;padding:10px 17px!important}.nav-links .nav-contact:after{display:none}.menu-button{display:none;gap:12px;align-items:center;padding:12px 0}.menu-icon{width:22px;display:grid;gap:5px}.menu-icon:before,.menu-icon:after{content:'';height:1px;background:currentColor}.menu-dialog{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;padding:34px var(--pad);background:var(--paper);color:var(--ink);border:0;margin:0}.menu-dialog::backdrop{background:#0006}.menu-top{display:flex;justify-content:space-between;align-items:center}.menu-close{font-size:11px;letter-spacing:.15em;text-transform:uppercase;padding:12px}.menu-nav{display:grid;gap:14px;padding-block:42px 30px}.menu-nav a{font:400 clamp(22px,6vw,30px)/1.3 var(--serif);letter-spacing:.06em;text-transform:uppercase;padding-block:4px;min-height:44px}.menu-bottom{display:flex;flex-wrap:wrap;gap:25px;font-size:11px}
.home-hero{height:100svh;min-height:700px;max-height:1250px;position:relative;color:var(--white);background:#605643;overflow:hidden}.home-hero>.hero-photo{width:100%;height:100%;object-fit:cover;object-position:50% 45%}.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0006,transparent 30%,#0001 45%,#0008 100%)}.hero-copy{position:absolute;z-index:1;bottom:100px;left:var(--pad);right:var(--pad);display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.hero-copy h1{font-size:clamp(80px,9vw,154px);line-height:.9;letter-spacing:-.035em}.hero-copy h1 em{display:block}.hero-copy .eyebrow{margin-bottom:26px;font-size:9px}.hero-copy-side{max-width:230px;padding-bottom:10px}.hero-copy-side p{font:400 23px/1.25 var(--serif);margin-bottom:24px}.hero-bottom{position:absolute;z-index:1;bottom:28px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.scroll-link{display:flex;gap:20px;align-items:center}.scroll-link span{font-size:19px;line-height:1}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:8vw;padding-block:110px 120px}.intro .eyebrow{margin:12px 0 0;max-width:180px}.intro h2{max-width:850px}.intro-bottom{display:grid;grid-template-columns:1.35fr 1fr;gap:5vw;align-items:end;margin-top:35px}.intro-bottom p{max-width:450px;color:var(--muted)}.intro-bottom .text-link{justify-self:start}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:54px}.section-heading .eyebrow{margin-bottom:15px}.section-heading p{max-width:270px;font-size:12px;color:var(--muted)}.stories-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px 8vw}.story-card{display:block;min-width:0}.story-photo{position:relative;overflow:hidden;background:#d9d6cb}.story-card img{height:100%;width:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.3,1)}.story-card:hover img{transform:scale(1.035)}.story-card .story-photo{aspect-ratio:4/5}.story-card:nth-child(4n+2){padding-top:120px}.story-card:nth-child(4n+2) .story-photo{aspect-ratio:5/4}.story-card:nth-child(4n+3) .story-photo{aspect-ratio:5/4}.story-card:nth-child(4n+4){padding-top:90px}.story-card:nth-child(4n+4) .story-photo{aspect-ratio:4/5}.story-info{display:flex;align-items:center;justify-content:space-between;margin-top:22px;gap:20px}.story-info h3{font-size:clamp(29px,3vw,45px)}.story-no{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-bottom:5px}.story-info .arrow{font:400 28px var(--serif)}.stories-ending{display:flex;justify-content:center;margin-top:65px}.feature-strip{position:relative;margin-top:110px;min-height:580px;height:70vw;max-height:800px;color:white}.feature-strip>img{height:100%;object-fit:cover;object-position:50% 45%}.feature-strip:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0008,transparent 70%)}.feature-strip figcaption{position:absolute;z-index:1;inset:auto var(--pad) 65px;display:flex;justify-content:space-between;align-items:end}.feature-strip h2{font-size:clamp(60px,7vw,112px)}.feature-strip figcaption p{max-width:240px;font-size:12px;line-height:1.8}
.services{padding-block:120px}.services-header{display:grid;grid-template-columns:1fr 2fr;gap:8vw;margin-bottom:65px}.services-header p{max-width:540px;margin-top:30px;color:var(--muted)}.service-row{display:grid;grid-template-columns:80px 1.2fr 1fr 44px;align-items:start;gap:35px;border-top:1px solid var(--line);padding:35px 0}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row .small-label{padding-top:8px;color:var(--muted)}.service-row h3{font-size:42px}.service-row p{font-size:13px;color:var(--muted);max-width:390px}.service-row .arrow{font:400 28px var(--serif)}.about-preview{display:grid;grid-template-columns:1fr 1fr;background:#e9e7dd}.about-preview figure{padding:65px 0 65px var(--pad);align-self:center}.about-preview figure img{max-height:720px;object-fit:cover;object-position:center 35%}.about-preview .about-copy{align-self:center;padding:80px var(--pad) 80px 7vw}.about-copy p{color:var(--muted);margin:28px 0}.about-copy .text-link{margin-top:8px}.contact-band{padding:110px var(--pad);text-align:center}.contact-band .eyebrow{margin-bottom:25px}.contact-band h2{max-width:900px;margin:auto;font-size:clamp(54px,6vw,100px)}.contact-band p{max-width:430px;margin:28px auto 32px;color:var(--muted)}.site-footer{background:var(--ink);color:var(--paper);padding:65px var(--pad) 28px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px;padding-bottom:65px}.footer-main .brand{align-items:flex-start;width:max-content}.footer-main p{font-size:12px;color:#c5c5b9;margin-top:27px;max-width:240px}.footer-links{display:grid;align-content:start;gap:9px;font-size:12px}.footer-links .eyebrow{font-size:9px;margin-bottom:12px;color:#c5c5b9}.footer-links a{width:max-content;max-width:100%}.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.footer-bottom{padding-top:22px;border-top:1px solid #ffffff2a;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#b8b9ae}.footer-legal{display:flex;gap:25px}
.page-intro{padding:90px var(--pad) 75px;display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:end}.page-intro h1{font-size:clamp(65px,8vw,128px)}.page-intro p{max-width:430px;color:var(--muted);margin-bottom:8px}.portfolio{padding-bottom:110px}.portfolio .stories-grid{gap:70px 6vw}.portfolio .story-card:nth-child(4n+2){padding-top:100px}.portfolio .story-card:nth-child(4n+4){padding-top:70px}.portfolio .story-card .story-photo{aspect-ratio:4/5}.portfolio .story-card:nth-child(4n+2) .story-photo,.portfolio .story-card:nth-child(4n+3) .story-photo{aspect-ratio:5/4}.portfolio-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);margin-top:70px;padding-top:25px;display:flex;justify-content:space-between;gap:30px}
.album-heading{text-align:center;padding:60px var(--pad) 65px}.breadcrumbs{display:flex;gap:12px;justify-content:center;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:40px}.album-heading h1{font-size:clamp(68px,8vw,130px)}.album-heading .couple-and{font-style:italic}.album-heading .eyebrow{margin:28px 0 0}.album-hero{height:auto;max-height:none;min-height:0;margin:0}.album-hero img{display:block;width:100%;height:auto;object-fit:contain}.album-intro{max-width:740px;text-align:center;margin:75px auto;padding:0 24px}.album-intro h2{font-size:48px;margin-bottom:25px}.album-intro p{color:var(--muted);max-width:540px;margin:auto}.gallery{display:flex;flex-direction:column;gap:0;padding:0}.gallery-item{margin:0;display:block;position:relative;width:100%;padding:clamp(6px,1vw,14px);background:#fff;cursor:zoom-in;overflow:hidden}.gallery-item img{display:block;width:100%;height:auto;object-fit:contain}.gallery-item .expand{position:absolute;right:16px;bottom:16px;background:#f4f1e9dd;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:19px;opacity:0;transition:opacity .2s}.gallery-item:hover .expand,.gallery-item:focus-visible .expand{opacity:1}.album-end{padding:45px var(--pad) 0;display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.08em}.related{padding-top:110px}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.related-grid .story-card{padding-top:0}.related-grid .story-photo{aspect-ratio:4/5}.related-grid h3{font-size:32px}.lightbox{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;background:#171815;color:var(--paper);border:0;margin:0;padding:65px 85px}.lightbox::backdrop{background:#171815}.lightbox figure{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.lightbox img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:24px;padding:10px 15px;font-size:11px;letter-spacing:.1em}.lightbox-counter{position:absolute;left:30px;top:28px;font-size:10px;letter-spacing:.15em}.lightbox-prev,.lightbox-next{position:absolute;top:45%;padding:18px;font-size:28px;color:white}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-caption{position:absolute;bottom:18px;left:24px;right:24px;text-align:center;font-size:10px;letter-spacing:.04em}
.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:80px var(--pad) 100px;align-items:center}.about-hero figure{position:relative}.about-hero img{max-height:820px;object-fit:cover}.about-hero figcaption{margin-top:16px;color:var(--muted);font-size:10px;letter-spacing:.05em}.about-hero h1{font-size:clamp(65px,7vw,110px)}.about-hero p{margin-top:30px;max-width:440px;color:var(--muted)}.about-hero .text-link{margin-top:30px}.approach{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:10vw}.approach-copy h2{font-size:60px;margin-bottom:30px}.approach-copy p{max-width:630px;color:var(--muted)}.principles{margin-top:45px}.principles div{border-top:1px solid var(--line);padding-block:24px;display:grid;grid-template-columns:140px 1fr;gap:25px}.principles h3{font-size:28px}.principles p{font-size:13px}
.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:80px var(--pad) 100px}.contact-intro h1{font-size:clamp(68px,7vw,105px)}.contact-intro>p{margin-top:30px;color:var(--muted);max-width:380px}.contact-details{display:grid;gap:10px;margin-top:35px;font-size:13px}.contact-details a{width:max-content;max-width:100%;overflow-wrap:anywhere;border-bottom:1px solid var(--line)}.contact-image{margin-top:45px;max-width:420px;aspect-ratio:4/3;object-fit:cover}.contact-form{padding-top:8px}.contact-form h2{font-size:40px;margin-bottom:12px}.form-intro{font-size:12px;color:var(--muted);margin-bottom:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field{display:grid;gap:10px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.09em;text-transform:uppercase}.field input,.field textarea{border:0;border-bottom:1px solid #a9aa9a;background:transparent;border-radius:0;min-width:0;width:100%;padding:10px 0 14px;color:var(--ink);font-size:14px}.field input::placeholder,.field textarea::placeholder{color:#77786b}.field input:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}.field textarea{resize:vertical;min-height:115px}.form-note{font-size:11px;line-height:1.7;color:var(--muted);margin:25px 0}.form-note a{text-decoration:underline;text-underline-offset:3px}.form-delivery-help{padding:16px 18px;border:1px solid var(--line);background:#ffffff70;margin:0 0 20px;font-size:12px;line-height:1.7}.form-delivery-help strong{display:block;margin-bottom:4px;font-weight:600}.form-status{font-size:12px;line-height:1.7;margin:0 0 18px}.form-status:empty{display:none}.form-status[data-state="error"]{color:#8a3127}.contact-form .button{width:100%}.form-honeypot{display:none}.contact-confirmation{text-align:center;max-width:880px;margin:auto}.contact-confirmation h1{font-size:clamp(60px,8vw,100px);margin-bottom:30px}.contact-confirmation p{max-width:520px;margin:20px auto;color:var(--muted)}.contact-confirmation .button{margin-top:20px}.contact-confirmation>.text-link{display:flex;justify-content:center;margin-top:24px}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:8vw}.faq h2{font-size:60px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;font:400 29px/1.25 var(--serif);padding:25px 36px 25px 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:0;top:23px;font:400 28px var(--serif)}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);font-size:13px;padding:0 35px 28px 0}.legal-content{max-width:850px;margin:0 auto;padding:80px var(--pad) 110px}.legal-content h1{font-size:70px;margin-bottom:30px}.legal-content h2{font-size:35px;margin:36px 0 16px}.legal-content p{color:var(--muted)}.legal-content a{border-bottom:1px solid var(--line)}.not-found{text-align:center;padding:110px var(--pad)}.not-found p{margin:30px auto;max-width:450px}
@media(min-width:1700px){.container,.site-header,.hero-copy,.hero-bottom{padding-inline:max(var(--pad),calc((100vw - 1600px)/2))}.hero-copy,.hero-bottom{left:0;right:0}.home-hero{max-height:1350px}}
@media(max-width:1050px){.nav-links{gap:20px}.site-header{height:95px}.brand-main{font-size:38px}.hero-copy-side{max-width:200px}.hero-copy-side p{font-size:21px}.intro{gap:5vw;grid-template-columns:1fr 2.5fr}.intro-bottom{grid-template-columns:1fr;gap:20px}.service-row{grid-template-columns:50px 1fr 1fr 25px;gap:20px}.service-row h3{font-size:36px}.about-preview .about-copy{padding:60px 5vw}.about-preview figure{padding-block:50px}.footer-main{grid-template-columns:1.2fr 1fr 1fr;gap:30px}}
@media(max-width:760px){:root{--pad:24px}body{font-size:13px}.section{padding-block:70px}.site-header{height:90px;padding-block:18px}.brand-main{font-size:36px}.brand-sub{font-size:7px;margin-top:8px}.nav-links{display:none}.menu-button{display:flex}.home-hero{height:92svh;min-height:620px;max-height:1100px}.home-hero>.hero-photo{object-position:57% center}.home-hero:after{background:linear-gradient(180deg,#0007,transparent 25%,#0001 40%,#0009 100%)}.hero-copy{bottom:90px;display:block}.hero-copy h1{font-size:clamp(75px,14vw,112px)}.hero-copy .eyebrow{font-size:8px;letter-spacing:.12em;max-width:250px;margin-bottom:22px}.hero-copy-side{margin-top:28px;max-width:100%;padding:0}.hero-copy-side p{display:none}.hero-copy-side .text-link{font-size:9px;gap:35px}.hero-bottom{bottom:25px;font-size:8px;letter-spacing:.08em}.hero-bottom>span{max-width:170px}.scroll-link{gap:10px}.intro{grid-template-columns:1fr;gap:25px;padding-block:65px 75px}.intro .eyebrow{margin:0;max-width:100%}.intro h2{font-size:48px}.intro-bottom{margin-top:26px;gap:24px}.intro-bottom p{font-size:13px}.section-heading{align-items:start;display:block;margin-bottom:35px}.section-heading h2{font-size:52px}.section-heading>p{margin-top:25px;max-width:340px}.stories-grid{gap:40px 20px}.story-card:nth-child(4n+2){padding-top:55px}.story-card:nth-child(4n+4){padding-top:40px}.story-info{margin-top:14px;gap:10px}.story-info h3{font-size:27px}.story-no{font-size:8px;letter-spacing:.06em}.story-info .arrow{display:none}.story-card .story-photo{aspect-ratio:3/4}.story-card:nth-child(4n+2) .story-photo,.story-card:nth-child(4n+3) .story-photo{aspect-ratio:4/5}.stories-ending{margin-top:45px}.feature-strip{margin-top:70px;height:75svh;min-height:520px}.feature-strip>img{object-position:52% center}.feature-strip figcaption{bottom:40px;display:block}.feature-strip h2{font-size:66px}.feature-strip figcaption p{margin-top:30px;max-width:240px}.services{padding-block:70px}.services-header{grid-template-columns:1fr;gap:10px;margin-bottom:40px}.services-header p{margin-top:24px}.service-row{grid-template-columns:25px 1fr 24px;gap:15px;padding-block:27px}.service-row h3{font-size:34px}.service-row p{grid-column:2;max-width:none;font-size:12px}.service-row>a{grid-column:3;grid-row:1/3}.service-row .small-label{padding-top:5px;font-size:9px}.about-preview{grid-template-columns:1fr}.about-preview figure{padding:30px 30px 0}.about-preview figure img{max-height:650px}.about-preview .about-copy{padding:40px 30px 55px}.about-copy h2{font-size:52px}.contact-band{padding-block:75px}.contact-band h2{font-size:55px}.contact-band p{font-size:12px}.site-footer{padding-top:50px}.footer-main{grid-template-columns:1fr 1fr;gap:35px;padding-bottom:40px}.footer-main>div:first-child{grid-column:1/-1;display:flex;justify-content:space-between;gap:25px}.footer-main p{margin-top:0;max-width:180px;font-size:10px}.footer-links{font-size:11px;gap:10px}.footer-bottom{flex-direction:column;gap:14px;font-size:9px}.page-intro{padding-block:55px 50px;grid-template-columns:1fr;gap:25px}.page-intro h1{font-size:77px}.page-intro p{max-width:470px;font-size:12px}.portfolio{padding-bottom:70px}.portfolio .stories-grid{gap:40px 20px}.portfolio .story-card:nth-child(4n+2){padding-top:50px}.portfolio .story-card:nth-child(4n+4){padding-top:35px}.portfolio .story-card .story-photo,.portfolio .story-card:nth-child(4n+2) .story-photo,.portfolio .story-card:nth-child(4n+3) .story-photo{aspect-ratio:3/4}.portfolio-note{margin-top:45px;display:block;font-size:10px}.portfolio-note>span{display:block;margin-bottom:8px}.album-heading{padding-block:40px}.breadcrumbs{margin-bottom:32px;font-size:8px}.album-heading h1{font-size:70px}.album-heading .eyebrow{font-size:8px;margin-top:22px}.album-intro{margin-block:50px}.album-intro h2{font-size:42px}.album-intro p{font-size:12px}.gallery-item .expand{display:none}.album-end{font-size:8px;padding-top:25px;gap:20px}.related{padding-top:70px}.related-grid{grid-template-columns:1fr 1fr;gap:20px}.related-grid .story-card:last-child{display:none}.related-grid h3{font-size:27px}.lightbox{padding:70px 15px}.lightbox-counter{left:22px}.lightbox-prev,.lightbox-next{top:auto;bottom:10px;font-size:24px;padding:10px 18px}.lightbox-caption{bottom:25px;left:65px;right:65px;font-size:9px}.lightbox-prev{left:5px}.lightbox-next{right:5px}.about-hero{grid-template-columns:1fr;padding-block:55px 65px;gap:45px}.about-hero figure{order:2}.about-hero h1{font-size:76px}.about-hero p{font-size:13px;margin-top:25px}.about-hero img{max-height:none}.approach{grid-template-columns:1fr;gap:20px}.approach-copy h2{font-size:48px}.principles div{grid-template-columns:1fr;gap:12px}.principles h3{font-size:32px}.contact-page{grid-template-columns:1fr;gap:60px;padding-block:55px 70px}.contact-intro h1{font-size:76px}.contact-intro>p{font-size:13px;margin-top:25px}.contact-details{font-size:12px}.contact-image{display:none}.contact-form h2{font-size:40px}.form-grid{gap:22px}.field input,.field textarea{font-size:16px}.faq{grid-template-columns:1fr;gap:20px}.faq h2{font-size:50px}.faq summary{font-size:27px}.legal-content{padding-block:55px 70px}.legal-content h1{font-size:58px}}
@media(max-width:390px){.story-info h3{font-size:23px}.hero-copy h1{font-size:74px}.hero-bottom>span{max-width:145px}.footer-main>div:first-child{display:block}.footer-main p{margin-top:24px;max-width:240px}.form-grid{grid-template-columns:1fr}.field{grid-column:1/-1}.album-heading h1{font-size:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* The opening composition leaves the couple visible on the left. */
@media(min-width:761px){.hero-copy{display:block;left:57%;bottom:15%;right:5.5%}.hero-copy h1{font-size:clamp(75px,7.6vw,130px)}.hero-copy-side{max-width:300px;margin-top:28px}.hero-copy-side p{font-size:23px;margin-bottom:16px}.home-hero:after{background:linear-gradient(180deg,#0006,transparent 25%),linear-gradient(90deg,transparent 35%,#0004 70%,#0005)}}
/* Justified rows keep every original photo in numeric order without empty cells or cropping. */
.gallery-item:hover img{opacity:.94}
@media(max-width:760px){.gallery{gap:0}.home-hero>.hero-photo{object-position:39% center}.hero-copy{bottom:90px}}
@media(max-width:760px){.contact-intro h1{font-size:clamp(48px,15.3vw,76px)}}
.footer-links a,.contact-details a{overflow-wrap:anywhere}

/* Full-screen photographic sequence on the homepage. */
.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity .25s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slides .hero-photo{width:100%;height:100%;object-fit:cover;object-position:var(--focus-desktop,50% 45%)}
.hero-bottom{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px}.hero-bottom>.scroll-link{grid-column:2;justify-self:end}.hero-slides:focus-visible{outline-offset:-8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:761px){.home-hero:after{background:linear-gradient(180deg,#0006,transparent 25%),linear-gradient(90deg,transparent 35%,#0006 65%,#0009)}.hero-copy .eyebrow,.hero-bottom{text-shadow:0 1px 4px #0009}}
@media(max-width:760px){.hero-slides .hero-photo{object-position:var(--focus-mobile,50% center)}.hero-copy{bottom:90px}.hero-bottom{grid-template-columns:1fr auto;bottom:25px}.hero-bottom>span{grid-column:1}.hero-bottom>.scroll-link{grid-column:2}}

/* WhatsApp contact stays visible beside the menu on small screens. */
.header-actions{display:flex;align-items:center;gap:22px}.header-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;border:1px solid currentColor;padding:10px 16px;font-size:9px;font-weight:500;line-height:1.4;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;transition:background .2s,color .2s}.header-whatsapp .arrow{font-size:16px;line-height:1}.header-whatsapp:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.site-header.overlay .header-whatsapp:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
@media(max-width:760px){.header-actions{gap:16px}.header-whatsapp{font-size:8px;padding:10px 12px;gap:8px}.site-header .menu-button{min-height:44px}}
@media(max-width:420px){.header-actions{gap:8px}.header-whatsapp{padding-inline:10px}.header-whatsapp .arrow,.site-header .menu-label{display:none}.site-header .menu-button{min-width:40px;justify-content:center}.site-header{column-gap:10px}}
@media(max-width:360px){.site-header .brand-main{font-size:32px}.site-header .brand-sub{font-size:6px}}

/* Business identity and legal notices. */
.footer-business{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:26px 0;border-bottom:1px solid #fff3;font-size:11px;line-height:1.9;color:#d7d8cc}.footer-business strong{font-weight:600;color:var(--paper)}.footer-business address{font-style:normal}.footer-business p{margin:0}.footer-legal{flex-wrap:wrap}.legal-content{max-width:960px}.legal-content>p,.legal-list,.legal-table{font-size:14px;line-height:1.9}.legal-content h2{font-size:clamp(28px,3vw,35px);line-height:1.15}.legal-content .legal-updated{font-size:11px;margin:-8px 0 25px;letter-spacing:.04em}.legal-nav{display:flex;flex-wrap:wrap;gap:16px 28px;margin:28px 0 40px;font-size:12px}.legal-nav [aria-current=page]{color:var(--ink);border-color:var(--ink)}.legal-controller{margin:22px 0 30px;padding:24px;border:1px solid var(--line)}.legal-controller strong{color:var(--ink);font-weight:600}.legal-list{padding-left:22px;color:var(--muted);margin:20px 0}.legal-list li+li{margin-top:16px}.legal-content .legal-source{border-top:1px solid var(--line);padding-top:26px;margin-top:40px;font-size:11px}.legal-table-wrap{margin:25px 0}.legal-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;color:var(--muted)}.legal-table caption{text-align:left;font-size:11px;padding-bottom:16px}.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:18px 14px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.legal-table th{font-weight:600;color:var(--ink)}.legal-table th:first-child{width:30%}.legal-content a{overflow-wrap:anywhere}.legal-content code{font-size:.9em;overflow-wrap:anywhere}@media(max-width:760px){.footer-business{grid-template-columns:1fr;gap:12px}.legal-content>p,.legal-list{font-size:13px}.legal-controller{padding:20px}.legal-table th,.legal-table td{padding:14px 8px}.legal-table th:first-child{width:33%}.legal-nav{gap:14px 24px}}
