/* Composition uses shared design-system tokens. */
*{box-sizing:border-box}html{scroll-padding-top:30px;color-scheme:light}body{margin:0;background:var(--surface-100);color:var(--ink);font:400 17px/1.65 var(--font-sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-serif);font-weight:500;line-height:1.12}h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.035em;text-wrap:balance}h3{font-size:24px;letter-spacing:-.02em}a{color:inherit}button,input,select,textarea{font:inherit}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}[hidden]{display:none!important}.container{max-width:1320px;margin:auto;padding-inline:clamp(22px,4vw,64px)}.section{padding-block:100px}.kicker{font:700 11px/1.6 var(--font-sans);letter-spacing:.17em;text-transform:uppercase;color:var(--brass);margin-bottom:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:16px 23px;border:1px solid var(--forest);border-radius:var(--radius-sm);background:var(--forest);color:var(--ink-on-forest);text-decoration:none;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer;min-height:48px;transition:background .15s}.button:hover{background:var(--forest-deep)}.button span{font-size:21px;line-height:1}.button-small{padding:12px 18px;font-size:13px}.text-link{text-decoration:none;border-bottom:1px solid currentColor;padding-block:5px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:20px}.text-link:hover{color:var(--brass)}.announcement{text-align:center;padding:9px 20px;background:var(--surface-forest);color:var(--cream);font-size:11px;letter-spacing:.08em}.announcement span{margin-inline:12px}.site-header{border-bottom:1px solid var(--line)}.nav-row{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 26px/1.1 var(--font-serif);white-space:nowrap}.brand small{display:block;margin-top:7px;font:500 9px/1.4 var(--font-sans);text-transform:uppercase;letter-spacing:.13em}.nav-row nav{display:flex;gap:28px}.nav-row nav a{font-size:13px;text-decoration:none;padding:14px 0}.nav-row nav a:hover{text-decoration:underline;text-underline-offset:6px}.hero-section{padding-top:62px}.hero-grid{display:grid;grid-template-columns:.9fr 1.15fr;gap:44px;align-items:center}.hero-copy{padding-bottom:10px}.hero-copy h1{font-size:clamp(50px,5.2vw,76px);line-height:1.03;letter-spacing:-.048em}.hero-copy h1 em,.offer-intro em{font-weight:400;color:var(--forest);font-style:italic}.intro{max-width:36ch;color:var(--ink-muted);font-size:16px;margin-top:25px}.hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}.hero-note{font-size:12px;color:var(--ink-subtle);max-width:44ch;margin-top:18px}.photo-frame{position:relative;border-radius:170px 170px 4px 4px;overflow:hidden;background:var(--surface-forest);height:580px}.photo-frame>img{height:100%;width:100%;object-fit:cover;object-position:53% center}.photo-frame:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(9,32,24,.74));pointer-events:none}.photo-label{position:absolute;left:28px;right:28px;bottom:27px;z-index:1;font:400 32px/1.1 var(--font-serif);color:var(--cream);text-align:center}.hero-figure figcaption{display:flex;justify-content:space-between;gap:12px;font-size:10px;line-height:1.5;color:var(--ink-subtle);margin-top:14px}.hero-foot{display:flex;justify-content:space-between;margin-top:52px;padding-block:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero-foot span:before{content:"✦";color:var(--brass);margin-right:12px}.section-intro{max-width:720px}.section-intro>p:last-child:not(.kicker){margin-top:24px;max-width:53ch;color:var(--ink-muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:55px}.feature-grid article{border-top:1px solid var(--line-strong);padding-top:22px}.feature-number{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--brass)}.feature-grid h3{margin-top:20px;max-width:18ch}.feature-grid p{color:var(--ink-muted);font-size:15px;margin-top:15px}.offer-section{background:var(--surface-forest);color:var(--cream);padding-block:85px}.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.offer-intro{max-width:400px}.offer-intro .kicker{color:var(--brass-on-dark)}.offer-intro h2{font-size:clamp(42px,4.4vw,62px)}.offer-intro em{color:var(--brass-on-dark)}.offer-intro>p:not(.kicker){margin-top:27px;color:var(--stout-head);font-size:16px}.offer-intro .text-link{margin-top:30px}.offer-intro .text-link:hover{color:var(--brass-on-dark)}.offer-section a:focus-visible{outline-color:var(--focus-inverse)}.offer-board{background:var(--forest-deep);padding:32px 36px;border:1px solid var(--line-on-dark);outline:1px solid var(--line-on-dark);outline-offset:-8px}.board-heading{display:flex;gap:22px;align-items:center;padding-bottom:27px;border-bottom:1px solid #687562}.board-heading>p{font:400 29px/1.1 var(--font-serif)}.board-heading small{display:block;font:400 12px/1.5 var(--font-sans);margin-top:8px;color:var(--stout-head)}.board-row{display:grid;grid-template-columns:.85fr 1.3fr;gap:24px;padding-block:23px;border-bottom:1px solid #53634f}.board-row h3{font-size:18px;line-height:1.35;color:var(--brass-on-dark)}.board-row p{font-size:13px;color:var(--stout-head);line-height:1.9}.board-price{padding-top:25px}.board-price>span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--brass-on-dark)}.board-price strong{display:block;font:400 32px/1.2 var(--font-serif);margin:9px 0}.board-price p{font-size:12px;color:var(--stout-head);max-width:45ch}.faq-section{padding-block:80px;background:var(--surface-300)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.faq-list{border-top:1px solid var(--line-strong)}details{border-bottom:1px solid var(--line-strong)}summary{cursor:pointer;list-style:none;padding:23px 30px 23px 0;font:500 21px/1.35 var(--font-serif);position:relative}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:0;top:23px;font:400 22px/1 var(--font-sans);color:var(--brass)}details[open] summary:after{content:"−"}details p{color:var(--ink-muted);font-size:15px;max-width:61ch;margin:0 22px 24px 0}.site-footer{background:var(--forest-deep);color:var(--cream)}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:center;padding-block:52px}.footer-brand{font:500 34px/1.2 var(--font-serif);margin-bottom:10px}.footer-main p:not(.footer-brand){font-size:12px;color:var(--stout-head)}.footer-main .text-link{font-size:12px}.site-footer a:focus-visible{outline-color:var(--focus-inverse)}.footer-bottom{border-top:1px solid #53634f;padding-block:20px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--stout-head)}.skip-link{position:absolute;left:20px;top:-100px;z-index:10;background:var(--surface-200);padding:10px 20px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero-copy h1{font-size:76px}}
@media(max-width:1050px){.nav-row nav{gap:18px}.hero-grid{gap:28px;grid-template-columns:1fr 1fr}.photo-frame{height:570px}.hero-actions{gap:14px}.offer-grid{gap:45px}.offer-board{padding:30px 25px}.faq-grid,.inquiry-grid{gap:38px}.feature-grid{gap:26px}.brand{font-size:23px}.nav-row{gap:15px}}
@media(max-width:800px){.nav-row{min-height:86px}.nav-row nav{display:none}.hero-section{padding-top:40px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero-copy h1{font-size:clamp(52px,8.8vw,70px)}.desktop-break{display:none}.intro{max-width:48ch}.photo-frame{height:420px;border-radius:130px 130px 3px 3px}.photo-frame>img{object-position:center 48%}.hero-figure figcaption{font-size:10px}.hero-foot{margin-top:32px;font-size:9px;letter-spacing:.07em;gap:15px}.hero-foot span:before{margin-right:6px}.section{padding-block:65px}.feature-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.feature-grid h3{max-width:none;margin-top:10px}.feature-grid p{max-width:60ch;margin-top:12px}.offer-grid{grid-template-columns:1fr;gap:38px}.offer-intro{max-width:540px}.offer-intro h2 br{display:none}.offer-section{padding-block:60px}.offer-board{max-width:600px;width:100%}.faq-grid,.inquiry-grid{grid-template-columns:1fr;gap:32px}.faq-grid h2 br,.inquiry-copy h2 br{display:none}.faq-section{padding-block:55px}.footer-main{flex-wrap:wrap}.footer-bottom{flex-wrap:wrap}}
@media(max-width:480px){.announcement{font-size:9px;letter-spacing:.03em}.announcement span{margin-inline:5px}.brand{font-size:20px;gap:7px}.brand img{width:32px}.brand small{font-size:7px;letter-spacing:.06em}.nav-row .button{font-size:11px;padding:10px;gap:0;max-width:110px;text-align:center}.nav-row .button span{display:none}.hero-copy h1{font-size:52px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.hero-note{font-size:11px}.photo-frame{height:350px;border-radius:110px 110px 3px 3px}.photo-label{font-size:26px;left:15px;right:15px}.hero-figure figcaption{flex-direction:column;gap:3px}.hero-foot{flex-wrap:wrap;justify-content:flex-start;column-gap:22px;row-gap:10px}.board-row{grid-template-columns:1fr;gap:8px}.board-heading{gap:14px}.board-heading>p{font-size:26px}.footer-main{align-items:flex-start;flex-direction:column;gap:24px}.photo-frame>img{object-position:54% center}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{.site-header nav,.hero-actions,.button,.text-button{display:none}.hero-grid,.offer-grid,.inquiry-grid{display:block}.photo-frame{height:300px}.section,.offer-section,.faq-section{padding-block:30px}}

.site-footer .text-link:hover{color:var(--brass-on-dark)}

.date-invitation{text-align:center;padding-block:90px 100px;max-width:900px}
.date-invitation h2{font-size:clamp(40px,5vw,62px)}
.date-lead{margin:22px auto 28px;color:var(--ink-muted);font-size:18px}
.date-invitation .button{min-width:235px}
.date-note{font-size:13px;color:var(--ink-subtle);margin-top:18px}
.setup-note{font-size:12px;color:var(--ink-muted);margin:20px auto 0;max-width:48ch}
.board-heading img{width:104px;height:104px}.board-heading>p{font-size:34px}.board-heading small{font-size:14px}.board-row h3{font-size:21px}.board-row p{font-size:15px;line-height:1.8}
.board-price>span{font-size:12px}.board-price strong{font-size:36px}.board-price p{font-size:14px;line-height:1.65}.keep-together{white-space:nowrap}
@media(min-width:481px){.board-row{grid-template-columns:.55fr 1.6fr;gap:18px}.board-row p{white-space:nowrap}}
@media(max-width:480px){.date-invitation{padding-block:60px}.date-lead{font-size:16px}.board-heading img{width:88px;height:88px}.board-heading>p{font-size:29px}.board-heading small{font-size:13px}.board-row h3{font-size:20px}.board-row p{font-size:14px}.board-price strong{font-size:30px}.board-price p{font-size:13px}}
