:root{--navy:#101b25;--navy-deep:#0b151e;--ivory:#f6f2e9;--ink:#172530;--muted:#53606a;--silver:#c4cbd1;--accent:#d9b394;--line-dark:#384650;--line-light:#ccc9c2;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--navy);color:var(--ivory);font-family:var(--sans);font-size:16px;line-height:1.7}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default}img{display:block;width:100%;height:auto}button{color:inherit}a,button,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #368ddd;outline-offset:5px}::selection{background:#a7d0ed;color:#0b151e}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}em{font-weight:400}h2{font-size:clamp(3rem,5.2vw,5.4rem);letter-spacing:-.035em}h3{font-size:2.9rem;letter-spacing:-.025em}p+p{margin-top:1.2rem}.skip{position:fixed;z-index:100;top:-100px;left:20px;background:white;color:var(--ink);padding:10px 20px}.skip:focus{top:10px}.preview-bar{position:relative;z-index:4;background:#263744;color:#f6f2e9;padding:7px 4vw;text-align:center;font-size:.75rem;letter-spacing:.14em;line-height:1.5}.preview-bar span{font-size:.75rem;letter-spacing:.02em;margin-left:18px;color:#d1dae0}.site-header{height:106px;padding:0 5vw;position:absolute;z-index:5;display:flex;align-items:center;justify-content:space-between;width:100%;border-bottom:1px solid #ffffff26}.wordmark{display:flex;flex-direction:column;align-items:center;line-height:1}.wordmark>span{font-family:var(--serif);font-size:2.45rem;letter-spacing:-.055em}.wordmark small{font-size:.75rem;letter-spacing:.31em;padding-left:5px;margin-top:7px}.site-header nav{display:flex;align-items:center;gap:40px;font-size:.875rem}.site-header nav>a{padding:8px 0}.site-header nav>a:hover{text-decoration:underline;text-underline-offset:7px}.nav-cta{border-bottom:1px solid var(--accent);display:flex;gap:24px}.menu-toggle{display:none;background:none;border:0;width:48px;height:48px;padding:12px}.menu-toggle span{height:1px;background:white;display:block;margin:7px 0}.mobile-menu{position:absolute;top:130px;left:0;width:100%;background:var(--navy);z-index:8;padding:20px 6vw;border-bottom:1px solid var(--line-dark)}.mobile-menu a{display:block;padding:12px 0}.hero{position:relative;min-height:850px;height:calc(100svh - 32px);max-height:1180px;overflow:hidden}.hero-photo{position:absolute;right:0;top:0;width:64%;height:100%}.hero-photo img{height:100%;object-fit:cover;object-position:62% center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,#101b2580 24%,transparent 59%),linear-gradient(0deg,#101b25b8,transparent 30%,transparent 85%,#101b2566)}.image-note{position:absolute;right:5vw;bottom:90px;z-index:2;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.08em;color:white}.hero-copy{position:relative;z-index:2;padding:170px 0 115px 8.3vw;max-width:800px;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.18em;line-height:1.6;text-transform:uppercase}.hero .eyebrow{display:flex;gap:18px;align-items:center;color:#e1c6b0}.short-rule{width:32px;height:1px;background:currentColor}.hero h1{font-size:clamp(5.25rem,7.35vw,8.5rem);line-height:.94;letter-spacing:-.045em;margin:32px 0}.hero h1 em{color:#e4c3a8}.hero-description{font-size:1rem;line-height:1.9;color:#e0e3e5;max-width:430px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:15px 24px;font-family:var(--sans);font-size:.875rem;font-weight:600;line-height:1.5;border:1px solid transparent;border-radius:0;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-light{background:var(--ivory);color:var(--ink)}.button-light:hover{background:#fff}.hero .button{margin-top:32px}.host-line{display:flex;align-items:center;gap:13px;margin-top:36px}.host-initials{display:grid;place-items:center;border:1px solid #929da7;border-radius:50%;height:40px;width:40px;font-family:var(--serif);font-size:1.1rem}.host-line p{font-size:.75rem;letter-spacing:.14em;color:#f6f2e9}.host-line small{font-size:.75rem;letter-spacing:0;display:block;margin-top:3px;color:#c7d0d6}.scroll-cue{position:absolute;bottom:35px;left:8.3vw;font-size:.75rem;display:flex;gap:24px;align-items:center;color:#d4dbe0;z-index:3}.scroll-cue span{font-size:1.3rem}.edition{position:absolute;bottom:40px;right:5vw;font-size:.75rem;letter-spacing:.2em;color:#c7d0d6;z-index:3}.section-light{background:var(--ivory);color:var(--ink)}.section-dark{background:var(--navy);color:var(--ivory)}.intro{padding:110px 8.3vw 105px}.intro>.eyebrow{color:#6a4a37;margin-bottom:25px}.intro h2{max-width:1100px}.intro-bottom{display:grid;grid-template-columns:1fr 2fr 2fr;gap:65px;margin-top:50px;align-items:start}.intro-bottom p{font-size:.94rem;line-height:1.85;margin:0;color:#40505b}.asterisk{font-size:4rem;line-height:1;color:#72513d}.evenings{padding:95px 8.3vw 75px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:26px;border-bottom:1px solid var(--line-dark)}.section-top .eyebrow{color:#e4c3a8}.section-aside{font-size:.8rem;color:#c5ccd2}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin:45px 0 60px}.section-heading>p{font-size:.875rem;line-height:1.9;color:#c5ccd2;max-width:380px;padding-bottom:5px}.experience{display:grid;grid-template-columns:60px 1fr 80px;gap:30px;padding:40px 0;border-top:1px solid var(--line-dark);align-items:center}.experience-number{align-self:start;font-family:var(--serif);font-size:1.4rem;color:#c4cbd1}.experience .eyebrow{font-size:.75rem;color:#e4c3a8;margin-bottom:12px}.experience h3{margin-bottom:15px}.experience p:not(.eyebrow){max-width:650px;font-size:.9rem;color:#cbd2d6;line-height:1.9}.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.tags span{font-size:.75rem;padding:4px 11px;border:1px solid var(--line-dark);color:#d8dfe3}.circle-link{border:1px solid #75818b;border-radius:50%;height:60px;width:60px;font-size:1.7rem;background:transparent;transition:.2s}.circle-link:hover{background:var(--ivory);color:var(--ink);transform:rotate(45deg)}.fine-note{padding:28px 0 0;border-top:1px solid var(--line-dark);font-size:.75rem;color:#c4cbd1}.host{padding:120px 8.3vw;display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center}.portrait-wrap{position:relative;padding-bottom:110px}.portrait-wrap>img{aspect-ratio:4/5;object-fit:cover;object-position:center;max-height:670px}.portrait-caption{position:absolute;right:-25px;left:38px;bottom:15px;background:#203542;color:var(--ivory);padding:27px 32px;display:flex;flex-direction:column}.portrait-caption span{font-size:.75rem;letter-spacing:.15em}.portrait-caption strong{font-family:var(--serif);font-size:2.8rem;line-height:1.3;font-weight:400;margin:5px 0}.host-copy>.eyebrow{color:#6a4a37;margin-bottom:22px;font-size:.75rem}.host h2{font-size:clamp(3rem,4.1vw,4.5rem);margin-bottom:30px}.host-copy>p:not(.eyebrow){font-size:.92rem;line-height:1.9;color:#44535e}.credentials{margin:30px 0}.credentials>div{padding:12px 0;border-bottom:1px solid var(--line-light);display:flex;flex-direction:column;gap:2px}.credentials dt{font-size:.8rem;font-weight:700}.credentials dd{margin:0;color:#52616c;font-size:.75rem}.text-link{background:none;border:0;border-bottom:1px solid currentColor;border-radius:0;display:inline-flex;gap:25px;align-items:center;font-size:.8rem;padding:6px 0;line-height:1.7;font-weight:600}.text-link:hover{border-bottom-width:2px}.interlude{position:relative;min-height:560px;display:grid;place-items:center;text-align:center;padding:100px 7vw;background:linear-gradient(#0b151ed9,#0b151ed9),url('assets/evening-1536.webp') center 70%/cover}.interlude .eyebrow{color:#e4c3a8;margin-bottom:30px;font-size:.75rem}.interlude div>p:last-child{font-family:var(--serif);font-size:clamp(2.9rem,5vw,5rem);line-height:1.1;letter-spacing:-.025em}.interlude em{color:#e4c3a8}.planner{padding:95px 8.3vw 110px}.planner .section-top{border-color:var(--line-light)}.planner .section-top .eyebrow{color:#6a4a37}.planner .section-aside,.planner .section-heading>p{color:#52616c}.planner-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:7vw;align-items:start}fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}legend,form>label,.form-row label{font-size:.85rem;font-weight:600;margin-bottom:12px;display:block}.choice-row{display:flex;gap:8px;flex-wrap:wrap}.choice-row label{cursor:pointer;display:block;position:relative}.choice-row input{position:absolute;left:12px;top:16px;width:1px;height:1px;opacity:0}.choice-row span{display:block;padding:11px 14px;border:1px solid #77838b;font-size:.75rem;color:var(--ink);transition:.2s}.choice-row input:checked+span{background:var(--navy);color:var(--ivory);border-color:var(--navy)}.choice-row input:checked+span:before{content:'✓ ';font-size:.8rem}.choice-row input:focus-visible+span{outline:3px solid #368ddd;outline-offset:4px}.choice-row label:hover span{border-color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}.form-row>div{min-width:0}select,input[type=text],input[type=date],textarea{width:100%;min-height:50px;background:transparent;color:var(--ink);border:1px solid #77838b;border-radius:0;padding:12px 14px;font-size:.85rem}select{padding-right:25px}textarea{resize:vertical;line-height:1.6}input::placeholder,textarea::placeholder{color:#606d73;opacity:1}.optional{font-size:.75rem;color:#606d73;font-weight:400;margin-left:5px}.privacy-note{font-size:.75rem;color:#596671;line-height:1.8;margin-top:12px}.evening-card{background:var(--navy);color:var(--ivory);padding:32px 35px 24px;box-shadow:12px 12px 0 #e4ddd2}.card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line-dark);padding-bottom:25px;margin-bottom:36px}.card-header>span:first-child{font-size:.75rem;letter-spacing:.17em}.card-header>span:last-child{font-size:1.8rem;color:#e4c3a8;line-height:1}.evening-card>.eyebrow{font-size:.75rem;color:#e4c3a8;margin-bottom:18px}.evening-card h3{font-size:3.2rem;max-width:330px}.evening-card>p:not(.eyebrow):not(.card-note){font-size:.83rem;color:#cbd2d6;margin-top:15px;min-height:55px}.evening-card dl{margin:20px 0 30px}.evening-card dl>div{padding:13px 0;border-bottom:1px solid var(--line-dark)}.evening-card dt{font-size:.75rem;letter-spacing:.17em;color:#c4cbd1}.evening-card dd{margin:4px 0 0;font-size:.84rem}.evening-card .button{width:100%;gap:15px}.card-note{font-size:.75rem;color:#c4cbd1;margin-top:12px;text-align:center}.portfolio{padding:90px 8.3vw;display:grid;grid-template-columns:1.2fr 1fr;gap:30px 8vw;border-top:1px solid var(--line-dark)}.portfolio>.eyebrow{grid-column:1/-1;color:#e4c3a8}.portfolio h2{font-size:clamp(2.8rem,4vw,4.2rem)}.portfolio>div{align-self:end}.portfolio p:not(.eyebrow){font-size:.9rem;color:#cbd2d6;margin-bottom:22px}.portfolio strong{color:var(--ivory);font-weight:500}footer{background:var(--navy-deep);padding:60px 8.3vw 35px}.footer-invitation{font-family:var(--serif);font-size:clamp(3.8rem,8vw,8.5rem);letter-spacing:-.05em;display:flex;justify-content:space-between;line-height:1.25;padding-bottom:35px;border-bottom:1px solid var(--line-dark)}.footer-invitation>span{font-family:var(--sans);font-size:.55em;font-weight:400;align-self:center}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:35px}.footer-bottom .wordmark>span{font-size:2rem}.footer-bottom>p{font-size:.75rem;color:#c4cbd1}.quiet-link{background:none;border:0;border-bottom:1px solid #7d8a95;font-size:.75rem;padding:5px 0;color:#c4cbd1}dialog{background:var(--ivory);color:var(--ink);width:min(660px,calc(100% - 32px));max-height:90svh;padding:45px;border:0;overflow:auto;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#07121cda;backdrop-filter:blur(7px)}dialog .eyebrow{color:#6a4a37;font-size:.75rem}dialog h2{font-size:3.6rem;margin:15px 0 20px}dialog>p:not(.eyebrow){font-size:.85rem;line-height:1.8}dialog>label{display:block;font-size:.8rem;margin:20px 0 8px;font-weight:600}dialog textarea{background:#fff9;font-size:.8rem}.dialog-close{position:absolute;right:16px;top:10px;width:40px;height:40px;background:none;border:0;font-size:2rem;line-height:1;color:var(--ink)}.dialog-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:16px}.button-dark{background:var(--navy);color:var(--ivory)}.button-dark:hover{background:#263d4d}.button-outline{background:none;color:var(--ink);border:1px solid var(--ink);width:100%}.status{min-height:25px;font-size:.8rem;margin:12px 0;color:#244258}.no-script{padding:15px;border:1px solid #77838b;margin-bottom:25px}.no-script a{text-decoration:underline}
@media(min-width:1600px){.hero-copy{padding-top:190px}.hero h1{font-size:8.7rem}.hero-description{font-size:1.12rem}.hero{min-height:950px}.intro,.evenings,.host,.planner,.portfolio,footer{padding-left:max(8.3vw,calc((100vw - 1440px)/2));padding-right:max(8.3vw,calc((100vw - 1440px)/2))}}
@media(max-width:1000px){.hero h1{font-size:6rem}.hero-copy{padding-left:6vw}.hero-photo{width:72%}.intro,.evenings,.host,.planner,.portfolio,footer{padding-left:6vw;padding-right:6vw}.intro-bottom{gap:30px;grid-template-columns:.5fr 2fr 2fr}.host{gap:6vw}.portrait-caption{left:15px;right:-15px;padding:22px}.host h2{font-size:3rem}.planner-grid{gap:35px;grid-template-columns:1.15fr 1fr}.evening-card{padding:25px}.form-row{gap:12px}.footer-bottom{flex-wrap:wrap}.footer-bottom>*{flex-basis:40%}.footer-bottom .wordmark{align-items:start}.scroll-cue{left:6vw}.hero{min-height:820px}.edition{font-size:.75rem}}
@media(max-width:700px){html{scroll-padding-top:25px}.preview-bar{font-size:.75rem;letter-spacing:.1em;padding:7px 12px}.preview-bar span{display:none}.site-header{height:85px;padding:0 6vw}.site-header .wordmark>span{font-size:2.15rem}.site-header nav{display:none}.menu-toggle{display:block}.mobile-menu{top:113px}.hero{height:auto;min-height:850px}.hero-copy{padding:145px 6vw 140px;max-width:none}.hero-photo{width:100%;height:100%}.hero-photo img{object-position:61% center}.hero-photo:after{background:linear-gradient(90deg,#101b25fa,#101b25ad 65%,#101b2577),linear-gradient(0deg,#101b25,transparent 60%)}.hero h1{font-size:clamp(3rem,13.8vw,6.4rem);margin:30px 0;line-height:.98}.hero .eyebrow{font-size:.75rem;letter-spacing:.12em;gap:12px}.hero-description{font-size:.9rem}.hero .button{margin-top:30px;min-height:54px}.host-line{margin-top:28px;align-items:start}.host-line small{max-width:240px;line-height:1.7;font-size:.75rem}.host-line p{font-size:.75rem}.host-initials{min-width:36px;height:36px}.scroll-cue{bottom:35px;font-size:.75rem}.edition{display:none}.image-note{bottom:105px;right:15px;font-size:.75rem}.intro{padding-top:70px;padding-bottom:65px}.intro h2{font-size:2.95rem}.intro h2 br{display:none}.intro-bottom{grid-template-columns:1fr;gap:24px;margin-top:30px}.intro-bottom .asterisk{font-size:2.5rem}.intro-bottom p{font-size:.88rem}.section-top{align-items:start;padding-bottom:20px}.section-top .eyebrow{font-size:.75rem}.section-aside{font-size:.75rem;max-width:135px;text-align:right}.evenings,.planner{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin:35px 0}.section-heading h2{font-size:3.35rem}.section-heading>p{font-size:.85rem;margin-top:23px}.experience{grid-template-columns:25px 1fr 42px;gap:14px;padding:30px 0}.experience-number{font-size:1.1rem}.experience .eyebrow{font-size:.75rem;letter-spacing:.11em}.experience h3{font-size:2.2rem}.experience p:not(.eyebrow){font-size:.83rem;line-height:1.8}.circle-link{height:40px;width:40px;font-size:1.3rem}.tags span{font-size:.75rem;padding:3px 7px}.tags{gap:6px}.fine-note{font-size:.75rem}.host{display:flex;flex-direction:column;gap:40px;padding-top:70px;padding-bottom:65px}.portrait-wrap{width:100%;max-width:450px;padding-bottom:70px}.portrait-wrap>img{max-height:520px;aspect-ratio:5/5.5}.portrait-caption{left:25px;right:0;bottom:0;padding:22px 25px}.portrait-caption strong{font-size:2.5rem}.portrait-caption span{font-size:.75rem}.host-copy>.eyebrow{font-size:.75rem}.host h2{font-size:3.2rem}.host-copy>p:not(.eyebrow){font-size:.88rem}.interlude{background-image:linear-gradient(#0b151ed9,#0b151ed9),url('assets/evening-960.webp');min-height:450px;padding:75px 6vw}.interlude div>p:last-child{font-size:3rem}.interlude .eyebrow{font-size:.75rem;letter-spacing:.13em}.planner-grid{grid-template-columns:1fr;gap:35px}.choice-row span{font-size:.75rem;padding:11px 12px}.form-row{grid-template-columns:1fr;gap:22px}.optional{font-size:.75rem}.evening-card{max-width:500px;width:calc(100% - 10px);padding:28px}.evening-card h3{font-size:3.4rem}.evening-card>p:not(.eyebrow):not(.card-note){min-height:0}.portfolio{grid-template-columns:1fr;gap:25px;padding-top:55px;padding-bottom:55px}.portfolio h2{font-size:3rem}.portfolio p:not(.eyebrow){font-size:.85rem}.footer-invitation{font-size:clamp(3rem,10vw,4.5rem);padding-bottom:27px}.footer-bottom{align-items:start;gap:25px;flex-direction:column}.footer-bottom>p{margin:0}.footer-bottom{padding-top:30px}footer{padding-top:35px}.button{font-size:.8rem;gap:22px}dialog{padding:38px 24px 28px}dialog h2{font-size:3rem}.dialog-actions{gap:14px}.dialog-actions .button{width:100%}dialog .button-outline{font-size:.75rem}.privacy-note{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.circle-link:hover{transform:none}}

/* Comfortable reading sizes on every viewport, including mobile form controls. */
.hero-description,.intro-bottom p,.section-heading>p,.experience p:not(.eyebrow),.host-copy>p:not(.eyebrow),.portfolio p:not(.eyebrow),dialog>p:not(.eyebrow),select,input[type=text],input[type=date],textarea{font-size:1rem}
legend,form>label,.form-row label,.choice-row span,.credentials dt,.credentials dd,.text-link,.evening-card>p:not(.eyebrow):not(.card-note),.evening-card dd,.button,dialog>label,dialog textarea,dialog .button-outline{font-size:.875rem}
@media(max-width:700px){.circle-link{width:44px;height:44px}.experience{grid-template-columns:22px 1fr 44px;gap:10px}.hero-copy{padding-bottom:150px}.hero{min-height:880px}.section-aside{max-width:145px}.hero .eyebrow{letter-spacing:.08em}.short-rule{width:20px;flex-shrink:0}}
