@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500;6..96,600&family=DM+Sans:wght@400;450;500;550;600;650&display=swap');
:root{--bg:#08090b;--ivory:#ede6d6;--gold:#c5a76d;--gold-light:#e0c492;--muted:#b1aaa0;--line:#3c3324;--sans:'DM Sans',Arial,sans-serif;--display:'Bodoni Moda',Georgia,serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ivory);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:7px}.page{max-width:1360px;padding:0 55px;margin:auto}.masthead{height:96px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;font-weight:550;letter-spacing:3px;font-size:13px;color:var(--ivory)}.masthead-note{font-size:9px;letter-spacing:2.6px;color:var(--gold)}.invitation{isolation:isolate;position:relative;text-align:center;background:#030405 url('/assets/midnight-deco-v2.png') center/100% 100% no-repeat;min-height:784px;display:grid;place-items:center;border-top:1px solid #5e4c2d;border-bottom:1px solid #5e4c2d}.invitation::after{content:'';position:absolute;inset:8px 22px;border-top:1px solid #2d261c;border-bottom:1px solid #2d261c;pointer-events:none;z-index:-1}.invitation-content{min-width:0;width:100%;padding:45px 13% 35px}.eyebrow{font-size:10px;letter-spacing:4px;font-weight:450;color:var(--gold);margin:0 0 20px}h1{font-family:var(--display);font-weight:400;margin:0;line-height:1;display:flex;flex-direction:column;align-items:center}.the{font-family:var(--sans);font-size:14px;letter-spacing:8px;font-weight:450;padding-left:8px;margin:0 0 10px}.vip{font-size:clamp(70px,9vw,126px);letter-spacing:5px;line-height:1.12;white-space:nowrap;font-weight:500}.ornament{display:flex;align-items:center;justify-content:center;gap:17px;margin:22px 0 26px;color:var(--gold)}.ornament span{height:1px;width:74px;background:linear-gradient(90deg,transparent,#736044)}.ornament span:last-child{transform:rotate(180deg)}.ornament i{font-size:6px;font-style:normal}.invitation h2{font-family:var(--display);font-size:34px;font-weight:400;letter-spacing:-.4px;margin:0 0 15px;line-height:1.22}.promise{font-size:15px;line-height:1.85;color:var(--muted);margin:0}.action{margin:29px 0 0}.cta{background:linear-gradient(115deg,#d8bf8d,#bc9b62);border:1px solid #ecd7aa;box-shadow:inset 0 0 0 4px #c6aa76;color:#17140e;display:flex;align-items:center;justify-content:center;gap:36px;width:300px;max-width:100%;min-height:59px;margin:0 auto;text-decoration:none;font-size:11px;font-weight:650;letter-spacing:2px;transition:background .2s,box-shadow .2s,transform .2s}.cta span{font-size:21px;font-weight:400;line-height:1}.cta:hover{background:linear-gradient(115deg,#e6d0a8,#c9ab77);box-shadow:inset 0 0 0 4px #d4b986,0 0 25px #c5a76d17;transform:translateY(-1px)}.micro{color:#ada28f;font-size:10px;letter-spacing:.55px;margin:12px 0 0}.micro span{padding:0 8px}.notification{margin:29px 0 0}.notification-title{font-size:9px!important;letter-spacing:2.1px;color:var(--gold-light)!important;margin:0 0 8px!important;font-weight:500}.notification p{font-size:12px;color:#b7afa1;line-height:1.65;margin:0}.mobile-break{display:none}.signature{display:flex;align-items:center;flex-direction:column;gap:8px;margin:32px 0 0}.signature span{font-size:7px;letter-spacing:2px;color:#8d8271}.signature strong{font-size:10px;letter-spacing:3px;font-weight:500;color:var(--gold)}.how{max-width:980px;margin:46px auto 0}.section-label{display:flex;align-items:center;justify-content:center;gap:26px}.section-label span{height:1px;flex:1;background:var(--line)}.section-label h2{font-family:var(--sans);font-size:9px;letter-spacing:2.4px;color:var(--gold);font-weight:500;margin:0;white-space:nowrap}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:0;margin:32px 0}.steps li{display:flex;align-items:flex-start;gap:17px;justify-content:center}.step-number{font-family:var(--display);font-size:23px;line-height:1;color:var(--gold);padding-top:2px;min-width:22px;text-align:center}.steps h3{font-size:13px;font-weight:500;margin:0 0 9px}.steps p{font-size:12px;line-height:1.75;color:var(--muted);margin:0}.steps strong{font-weight:500;color:#d0c6b5}.quiet{text-align:center;font-family:var(--display);font-size:23px;color:#c8bca5;font-weight:400;margin:35px 0}.details{max-width:980px;margin:0 auto}.details>details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;text-align:center;padding:18px;font-size:11px;color:var(--muted);letter-spacing:.4px}summary::-webkit-details-marker{display:none}summary span{display:inline-block;margin-left:18px;color:var(--gold);font-size:14px}details[open] summary span{transform:rotate(45deg)}.answers{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:14px 0 28px}.answers h3{font-size:13px;font-weight:500;margin:0 0 9px}.answers p{font-size:12px;line-height:1.75;color:var(--muted);margin:0}footer{max-width:980px;margin:0 auto;padding:27px 0 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:8px;letter-spacing:1.2px;color:#928570}footer a{text-underline-offset:4px}.slash{padding:0 9px;color:#5e5039}.skip{position:absolute;top:-100px;left:15px;padding:14px;background:var(--gold);color:#111;z-index:10}.skip:focus{top:15px}.legal{max-width:760px;padding:60px 0 100px;min-height:70vh}.legal h1{display:block;font-family:var(--display);font-size:55px;margin:25px 0}.legal h2{font-family:var(--display);font-size:27px;font-weight:400;margin-top:35px}.legal p{color:var(--muted);font-size:15px;line-height:1.8}.legal .cta{margin:25px 0}.legal a{text-underline-offset:4px}.legal~footer{max-width:none}header:not(.masthead){display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 0;border-bottom:1px solid var(--line)}header:not(.masthead) .brand span{display:block;font-size:8px;letter-spacing:2px;margin-top:8px;color:var(--gold)}header:not(.masthead)>a:last-child{font-size:11px}
@media(min-width:1500px){.page{padding:0 55px}.invitation{min-height:806px}}@media(max-width:900px){.page{padding:0 28px}.masthead{height:82px}.invitation{min-height:760px}.invitation-content{padding:44px 10% 35px}.vip{font-size:94px}.steps{gap:20px}.steps li{gap:10px}.steps p{font-size:11px}.steps h3{font-size:12px}.answers{gap:25px}}@media(max-width:600px){.page{padding:0 12px}.masthead{height:71px;padding:0 10px}.brand{font-size:10px;letter-spacing:2px}.masthead-note{font-size:7px;letter-spacing:1.4px}.invitation{min-height:0;aspect-ratio:auto;background-size:100% 100%;border-color:#55442a}.invitation::after{inset:7px 12px}.invitation-content{padding:33px 27px 30px}.eyebrow{font-size:8px;letter-spacing:3px;margin-bottom:22px}.the{font-size:11px;letter-spacing:6px;padding-left:6px;margin-bottom:12px}.vip{font-size:clamp(48px,16vw,82px);letter-spacing:1px;line-height:1.13}.ornament{margin:21px 0}.ornament span{width:46px}.invitation h2{font-size:27px;line-height:1.2;max-width:265px;margin:0 auto 15px}.promise{font-size:12px;line-height:1.8;max-width:270px;margin:auto}.action{margin-top:25px}.cta{width:280px;min-height:57px;font-size:10px;letter-spacing:1.7px;gap:32px}.micro{font-size:9px;margin-top:13px}.notification{margin-top:27px}.notification-title{font-size:8px!important;letter-spacing:1.35px}.notification p{font-size:11px;line-height:1.8}.mobile-break{display:block}.signature{margin-top:26px;gap:7px}.signature strong{font-size:9px}.how{margin:32px 20px 0}.section-label{gap:13px}.section-label h2{font-size:8px;letter-spacing:1.5px}.steps{grid-template-columns:1fr;gap:24px;max-width:280px;margin:29px auto}.steps li{justify-content:flex-start;gap:20px}.step-number{width:29px;min-width:29px;font-size:25px}.steps h3{font-size:14px;margin-bottom:6px}.steps p{font-size:12px}.quiet{font-size:21px;margin:33px 0 27px}.details{margin:0 20px}.answers{grid-template-columns:1fr;gap:22px;padding-bottom:25px}.answers p{font-size:12px}.answers h3{font-size:13px}footer{margin:0 20px;font-size:7px;letter-spacing:.7px;padding:24px 0}.slash{padding:0 4px}.legal{padding:36px 14px 70px}.legal h1{font-size:42px}.legal p{font-size:14px}header:not(.masthead){margin:0 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta{transition:none}}

/* Salon invitation: architectural composition and stepped stationery action. */
.identity{position:relative;isolation:isolate}.desktop-break{display:none}.salon-rule{display:flex;align-items:center;justify-content:center;gap:9px;margin:23px 0}.salon-rule span{height:1px;width:45px;background:linear-gradient(90deg,transparent,#776343)}.salon-rule span:last-child{transform:rotate(180deg)}.salon-rule i{height:5px;width:5px;border:1px solid #a28a5d;transform:rotate(45deg)}
.invitation-cta{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:9px;width:322px;min-height:88px;padding:18px 23px;color:#211c14;background:linear-gradient(115deg,#cbb782 0%,#eee4cd 22%,#e2d3af 65%,#c7ad73 100%);border:0;box-shadow:none;clip-path:polygon(0 12px,7px 12px,7px 5px,14px 5px,14px 0,calc(100% - 14px) 0,calc(100% - 14px) 5px,calc(100% - 7px) 5px,calc(100% - 7px) 12px,100% 12px,100% calc(100% - 12px),calc(100% - 7px) calc(100% - 12px),calc(100% - 7px) calc(100% - 5px),calc(100% - 14px) calc(100% - 5px),calc(100% - 14px) 100%,14px 100%,14px calc(100% - 5px),7px calc(100% - 5px),7px calc(100% - 12px),0 calc(100% - 12px));transition:filter .25s,transform .25s}
.invitation-cta::before{content:'';position:absolute;inset:7px 14px;border:1px solid #897244;box-shadow:0 0 0 3px #eee3c47a;z-index:-1;pointer-events:none}.invitation-cta .cta-label{font-family:var(--display);font-size:28px;line-height:1.05;letter-spacing:-.5px;font-weight:500}.invitation-cta .cta-caption{font-family:var(--sans);font-size:8px;line-height:1.3;letter-spacing:1.65px;font-weight:600}.invitation-cta:hover{background:linear-gradient(115deg,#d8c595,#f7eed9 35%,#e3d2aa 80%,#cfb67c);box-shadow:none;transform:translateY(-2px);filter:drop-shadow(0 3px 7px #b2914320)}.invitation-cta:active{transform:translateY(1px)}.invitation-cta:focus-visible{outline:none;background:#fff1d1}.invitation-cta:focus-visible::before{border:2px solid #312311;box-shadow:0 0 0 2px #f9efd9}
@media(min-width:1000px){.page{max-width:1490px;padding:0 54px}.masthead{height:92px}.invitation{min-height:730px;background-size:100% 100%}.invitation-content{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:74px 11% 72px}.identity{padding:56px 0 35px}.identity::before{content:'';position:absolute;inset:-31px -2px -20px;background:url('/assets/salon-arch.svg') center/100% 100% no-repeat;opacity:.24;z-index:-1;pointer-events:none}.identity .eyebrow{font-size:8px;letter-spacing:3.4px;margin:0 0 30px}.the{font-size:11px;letter-spacing:7px;margin-bottom:20px}.vip{display:flex;flex-direction:column;font-size:clamp(112px,10.2vw,151px);letter-spacing:-2px;line-height:.84;font-weight:400;gap:11px}.identity .signature{margin-top:34px;gap:8px}.identity .signature strong{font-size:9px}.invitation-message{text-align:left;min-width:0;padding-top:0}.desktop-break{display:block}.salon-rule{justify-content:flex-start;margin:0 0 29px}.salon-rule span{width:30px}.invitation h2{font-size:clamp(35px,3.45vw,49px);line-height:1.13;letter-spacing:-1px;margin-bottom:25px}.promise{font-size:13px;line-height:1.95}.action{margin-top:32px}.invitation-cta{margin-left:0}.micro{text-align:center;max-width:322px;font-size:9px;margin-top:14px}.notification{margin-top:31px;padding-top:21px;border-top:1px solid #4e412a;max-width:322px}.notification-title{font-size:8px!important;letter-spacing:1.7px}.notification p{font-size:11px;line-height:1.8}.how{margin-top:37px}.quiet{font-size:26px;margin-top:36px}.steps li{justify-content:flex-start;padding:0 15px}.steps li+li{border-left:1px solid #352d21;padding-left:25px}}
@media(min-width:1000px) and (max-width:1150px){.invitation-content{padding-left:10%;padding-right:10%;gap:7%}.vip{font-size:113px}.invitation h2{font-size:36px}.invitation-cta .cta-label{font-size:26px}.invitation-cta .cta-caption{font-size:7px;letter-spacing:1.1px}.promise{font-size:12px}}
@media(max-width:999px){.identity .signature{display:none}.salon-rule{margin:24px 0}.invitation-content{padding-top:40px;padding-bottom:39px}.invitation-cta{width:310px}.invitation-message h2{margin-top:0}.notification{margin-top:27px}.notification p{line-height:1.8}.notification::after{content:'CURATED BY THE RUNDOWN';display:block;font-size:7px;letter-spacing:1.8px;color:var(--gold);margin-top:29px}}
@media(max-width:600px){.invitation-content{padding:33px 27px 31px}.identity .eyebrow{margin-bottom:24px}.salon-rule{margin:23px 0}.invitation-cta{min-height:84px;width:292px;padding:17px 16px;gap:8px}.invitation-cta .cta-label{font-size:27px}.invitation-cta .cta-caption{font-size:7px;letter-spacing:1.4px}.notification-title{font-size:7px!important;letter-spacing:1.2px}.micro{font-size:8px}.promise{font-size:12px}.notification::after{margin-top:26px}}
@media(prefers-reduced-motion:reduce){.invitation-cta{transition:none}.invitation-cta:hover{transform:none}}

/* Clear ticket action and notification setup. */
.promise strong{font-weight:450;color:#e1d7c3}.ticket-cue{display:flex;align-items:center;justify-content:center;gap:9px;max-width:322px;margin:0 auto 13px;font-size:9px;font-weight:500;letter-spacing:1.65px;color:#e0c492}.ticket-cue svg{width:25px;height:25px;flex:none}.touch-copy{display:none}.invitation-cta{cursor:pointer;filter:drop-shadow(0 4px 9px #dac49520);background:linear-gradient(115deg,#d3bd89,#f5ebd4 30%,#e9daba 70%,#c9af76)}.invitation-cta:hover{filter:brightness(1.06) drop-shadow(0 6px 12px #dac49530)}.invitation-cta .cta-label{font-size:27px}.micro strong{font-weight:600;color:var(--ivory)}.notification-heading{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:10px}.notification-heading svg{width:19px;height:19px;flex:none;color:#dac08c}.notification-heading .notification-title{font-size:10px!important;letter-spacing:1.5px;margin:0!important;color:#f0dbb2!important}.notification p{color:#ccc1ad}.answers{row-gap:30px}.answers>div{padding-top:15px;border-top:1px solid #302a20}.quiet{color:#ded0b7}
@media(min-width:1000px){.ticket-cue{margin-left:0}.action{margin-top:25px}.notification{margin-top:24px}.notification-heading{justify-content:flex-start}.notification-heading .notification-title{font-size:9px!important;letter-spacing:1.35px}.invitation-content{padding-top:60px;padding-bottom:60px}.notification p{font-size:11px}.promise{font-size:13px}.invitation h2{margin-bottom:21px}.salon-rule{margin-bottom:23px}}
@media(max-width:600px){.ticket-cue{font-size:8px;letter-spacing:1.35px;margin-bottom:12px}.ticket-cue svg{width:22px;height:22px}.invitation-cta .cta-label{font-size:26px}.notification-heading .notification-title{font-size:9px!important;letter-spacing:1.1px}.notification-heading{gap:7px}.notification p{font-size:11px}.micro{font-size:10px}.notification{margin-top:24px}.answers>div{padding-top:13px}.action{margin-top:23px}}
@media(hover:none),(pointer:coarse),(max-width:600px){.pointer-copy{display:none}.touch-copy{display:inline}}
@media(max-width:380px){.invitation-cta .cta-label{font-size:23px}.notification-heading .notification-title{font-size:8px!important;letter-spacing:.7px}.notification p{font-size:10px}}

.notification-heading .notification-title{font-weight:600;font-size:11px!important;letter-spacing:1.1px}.ticket-cue{font-size:10px}.notification p{font-size:12px;line-height:1.8}
@media(max-width:600px){.notification-heading .notification-title{font-size:10px!important;letter-spacing:1px}.ticket-cue{font-size:9px;letter-spacing:1.2px}.notification p{font-size:11px}}
@media(max-width:380px){.notification-heading .notification-title{font-size:9px!important;letter-spacing:.8px}.notification p{font-size:10px}.ticket-cue{font-size:8px}}
