:root{--ivory:#f8f5ef;--sand:#eee8dd;--paper:#fffdf7;--ink:#444c3f;--muted:#676d60;--gold:#a88c60;--gold-soft:#d9c6a3;--line:#b9a88855;--forest:#242d27;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',Arial,sans-serif;--header-height:82px;--section-height:calc(100svh - var(--header-height))}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{margin:0;background:var(--ivory);color:var(--ink);font:400 16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,h4,p,figure,dl{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.025em}h2{font-size:clamp(36px,4vw,58px);color:#968267}h3{font-size:34px;color:#927e5e}p{color:var(--muted)}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--gold);outline-offset:5px}dialog{color:var(--ink);font-family:var(--sans)}dialog::backdrop{background:#0c171dcc;backdrop-filter:blur(5px)}.container{width:87%;max-width:1450px;margin:0 auto}.screen-section{height:var(--section-height);max-height:900px;padding:36px 0;position:relative;scroll-margin-top:0}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}.section-heading{text-align:center;flex-shrink:0}.section-heading h2{margin-bottom:14px}.section-heading p{font-size:15px;line-height:1.65;max-width:800px;margin:auto}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 25px;border:1px solid transparent;border-radius:0;font:400 13px/1.5 var(--sans);letter-spacing:.025em;text-decoration:none;transition:background .3s,border-color .3s,box-shadow .3s}.button-gold{background:var(--gold-soft);color:#2a3328;border-color:var(--gold-soft)}.button-gold:hover{background:#eadbbd;border-color:#eadbbd}.button-outline{background:transparent;border-color:#b29a73;color:#85714e}.button-outline:hover{background:#e9dfce}.round-button{width:40px;height:40px;border:1px solid #b9a6868c;background:transparent;border-radius:50%;color:var(--gold);font-size:20px;display:grid;place-items:center}.round-button:hover{background:#dccbad55}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:8px;left:8px;z-index:200;background:var(--paper);padding:12px}.close-button{background:none;border:0;color:var(--gold);font:300 32px/1 var(--sans);padding:5px 10px}.back-to-top{position:fixed;right:20px;bottom:20px;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #a58e65;border-radius:50%;background:var(--forest);color:#d6c29c;z-index:20;box-shadow:0 12px 26px -10px #0008;opacity:0;visibility:hidden;transition:opacity .3s,background .3s,color .3s}.back-to-top svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:translate .3s}.back-to-top:hover{background:#c9ad7c;color:var(--forest)}.back-to-top:hover svg{translate:0 -2px}.back-to-top.is-visible{opacity:1;visibility:visible}
@media(min-width:992px) and (max-height:780px){.screen-section{padding:25px 0}.section-heading h2{font-size:44px;margin-bottom:9px}.section-heading p{font-size:14px}.eyebrow{margin-bottom:12px}}
@media(min-width:992px) and (max-height:650px){.screen-section{height:auto;min-height:560px;max-height:none}}
@media(max-width:991px){:root{--header-height:78px}.container{width:88%}.screen-section{height:auto;max-height:none;padding:42px 0}h2{font-size:43px}}
@media(max-width:600px){:root{--header-height:74px}body{font-size:14px;line-height:1.7}.container{width:86%}.screen-section{padding:30px 0}h2{font-size:36px}h3{font-size:28px}.section-heading p{font-size:13px}.button{font-size:12px;min-height:44px;padding:10px 20px}.eyebrow{font-size:9px;margin-bottom:12px}.back-to-top{right:12px;bottom:12px;width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
