:root{--plum:#241726;--gold:#be9e6f;--cream:#f7f4ee;--line:#d9d0d8;--muted:#68616a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:16px/1.65 Arial,sans-serif;color:var(--plum)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}a,button,input,select,textarea,summary{outline-offset:5px}.skip{position:absolute;top:-100px;background:#fff;padding:15px;z-index:8}.skip:focus{top:10px}.banner{background:var(--plum);color:#eadfea;padding:8px 5%;text-align:center;font-size:14px}header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px 5%;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{font:24px Georgia,serif;letter-spacing:1.5px}.brand small{display:block;font:10px/2 Arial,sans-serif;letter-spacing:2px}nav{display:flex;gap:24px;font-size:14px}section{padding:65px max(5%,calc((100% - 1224px)/2))}.hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.hero .hero-headline{font:clamp(48px,6vw,78px)/1.08 Georgia,serif;letter-spacing:-2px;margin:20px 0}.hero em{color:#967443}.lead{font-size:21px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:2px}.meta,figcaption,small{font-size:12px;color:var(--muted)}p{margin:0 0 18px}figure{margin:0}figure img{width:100%;height:auto;border:1px solid var(--line);display:block}figcaption{padding-top:8px}.button{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:48px;padding:13px 20px;border:1px solid var(--gold);background:var(--gold);color:var(--plum);border-radius:3px;font-size:14px;font-weight:bold}.button:hover{background:#d1b587}.button.outline{background:transparent;color:inherit;border-color:currentColor}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 5%;gap:24px;border-block:1px solid var(--line);font-size:14px}.stats b{display:block;font:32px/1.3 Georgia,serif;margin-bottom:8px}h2{font:clamp(34px,4vw,52px)/1.15 Georgia,serif;letter-spacing:-1px;margin:18px 0 28px}h3{font:25px/1.3 Georgia,serif;margin:12px 0}.columns{display:grid;grid-template-columns:1fr 1fr;gap:45px}.dark{background:var(--plum);color:#f4eaf5}.dark .meta,.dark .eyebrow{color:#d6c6d7}.dark article{border-bottom:1px solid #675168;margin-bottom:22px;padding-bottom:12px}.price{font:44px Georgia,serif;color:#dfc395}.note{font-size:14px;border-top:1px solid #675168;padding-top:22px;margin-top:30px}.soft{background:var(--cream)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards article{border-top:1px solid var(--gold);padding-top:15px}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.tags span{padding:8px 13px;border:1px solid #bdafbe;font-size:14px}li{padding:6px}details{margin-top:25px;padding:20px 0;border-block:1px solid var(--line)}summary{font-size:16px;font-weight:bold}details p{margin:18px 0 0}#day-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:30px 0;border-bottom:1px solid var(--line)}.day-tab{padding:14px 8px;background:none;border:0;border-bottom:3px solid transparent;text-align:left;color:var(--muted);font-size:14px;min-height:85px}.day-tab span{display:block;font-size:12px;letter-spacing:1px}.day-tab[aria-selected=true]{background:var(--cream);color:var(--plum);border-color:var(--gold)}#day-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:45px;padding:20px 0}.outcome{padding:30px;border-left:2px solid var(--gold);background:var(--cream)}.schedule{list-style:none;padding:0}.schedule li{display:grid;grid-template-columns:65px 1fr;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}time{font-size:14px;font-weight:bold}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px}input,select,textarea{display:block;min-height:48px;width:100%;min-width:0;padding:12px;margin-top:7px;border:1px solid #b8abb9;border-radius:3px;color:var(--plum);background:#fff}textarea{resize:vertical}.wide{grid-column:1/-1}.uploads{margin-top:28px}.uploads label{border:1px dashed #b4a5b5;padding:20px;background:white}.uploads small{display:block;margin-top:8px}.uploads img,.uploads video{max-width:100%;max-height:240px;object-fit:contain;margin-top:15px}.check{display:flex;align-items:flex-start;gap:12px;margin:25px 0}.check input{width:20px;min-height:20px;flex:none;margin-top:3px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}#casting-status{margin-top:20px}.dark input{background:#352438;color:#fff;border-color:#8f7891}.result{padding:30px;background:#352438}dl{margin:0}dl div{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid #675168}dt{font-size:14px}dd{font:25px Georgia,serif;text-align:right;margin:0}#profit{color:#dfc395}#budget-error,#media-error{color:#b52e45;margin-top:16px}.dark #budget-error{color:#ffd0d9}.saved{display:flex;gap:14px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #675168;font-size:14px}.saved button{background:none;color:#dfc395;border:0;text-decoration:underline;font-size:14px}.doc{border:1px solid var(--line);padding:25px}.doc b{display:block;font-size:20px}.doc span{font-size:14px;color:var(--muted)}footer{padding:40px 5%;background:var(--plum);color:#fff;font-size:14px}footer p{margin:8px 0;color:#d6c6d7}#toast{display:none;position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:16px;background:white;border:1px solid var(--gold);box-shadow:0 4px 25px #0004;width:min(90%,500px);z-index:10}#toast.visible{display:block}[hidden]{display:none!important}@media(max-width:1000px){#day-tabs{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:1fr 1fr}.hero{gap:25px}.columns{gap:25px}}@media(max-width:700px){header{display:block;padding:15px 5%}.brand{font-size:20px}nav{margin-top:15px;overflow:auto;white-space:nowrap;gap:22px;padding-bottom:5px}.banner{font-size:12px}.hero,#day-panel,.columns,.cards.three{grid-template-columns:1fr}.hero .hero-headline{font-size:52px}.hero figure{margin-top:10px}section{padding:40px 5%}.stats{grid-template-columns:1fr 1fr}.stats b{font-size:26px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.day-tab{font-size:13px;padding:12px 7px}.result,.outcome{padding:22px}.actions .button{width:100%}.uploads input{font-size:13px}.cards h3{font-size:23px}dd{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.participation-prices{font-size:22px;line-height:1.5;color:#dfc395;margin:24px 0}.participation-prices p{margin-bottom:24px}.journey{padding-left:24px}.cabinet-result{padding:28px;background:var(--cream);border:1px solid var(--line)}.cabinet-result dl div{border-color:var(--line)}.cabinet-result #cabinet-message{margin-top:20px}.cabinet-result button:disabled{cursor:default;opacity:.7}.text-link{text-decoration:underline}#document-choices .check{margin:16px 0}#document-choices small{display:block}.brand small{font-size:12px}.meta,figcaption,small{font-size:14px}.day-tab span,.eyebrow{font-size:13px}@media(max-width:700px){.cabinet-result{padding:20px}.cabinet-result dl div{flex-wrap:wrap;gap:8px}.brand small{letter-spacing:1px}nav{flex-wrap:wrap;overflow:visible;white-space:normal}.stats b{font-size:25px}.hero .hero-headline{font-size:clamp(40px,12vw,52px)}.cards{grid-template-columns:1fr}dd{overflow-wrap:anywhere}}

.catalog-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;margin:28px 0}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.participant-card,.media-item{background:#fff;border:1px solid var(--line);padding:24px;min-width:0;overflow-wrap:anywhere}.participant-card img{width:100%;height:260px;object-fit:cover;margin-bottom:20px}.portrait-empty{height:160px;display:grid;place-items:center;background:var(--cream);color:var(--muted);font-size:14px;margin-bottom:20px}.participant-card .button{margin-top:12px}.empty-state{grid-column:1/-1;padding:28px;border:1px dashed var(--line);margin:0}.media-item .button{display:block;margin:20px 0}.media-item h3{font-size:24px}.admin-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin:20px 0;padding:20px 0;border-bottom:1px solid var(--line)}dialog{color:var(--plum);padding:35px;width:min(92vw,820px);max-height:88vh;overflow:auto;border:1px solid var(--gold);border-radius:4px}dialog::backdrop{background:#241726bb}.profile-portrait{width:180px;max-height:240px;object-fit:cover;margin:25px 0}#profile-dialog-body{margin-top:20px}#profile-dialog-body .media-item{margin-top:16px}#media-editor label{margin-bottom:16px}#participant-count,#media-count{margin-top:16px}@media(max-width:1100px){header{flex-wrap:wrap}nav{flex-wrap:wrap;gap:16px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.catalog-filters,.catalog-grid{grid-template-columns:1fr}.participant-card img{height:300px}.media-item,.participant-card{padding:22px}dialog{padding:20px}nav{font-size:14px;gap:12px 20px}}

.brand{font-size:21px;max-width:400px;line-height:1.35}.brand small{font-size:12px;letter-spacing:1px}.brand-preview{background:#0e1733;padding:24px;border-radius:8px;color:#fff}.brand-preview img{border:0}.brand-preview figcaption{color:#dae6ff;margin-bottom:16px}.brand-preview select{color:#162855}.dating-choice{margin:30px 0;padding:24px;border:1px solid var(--line)}.dating-choice legend{padding:0 10px;font-weight:bold}.dating-demo-note{padding:20px;background:#fff;border-left:3px solid #1655ee}.dating-controls{padding:25px;background:#fff;border:1px solid var(--line)}.dating-avatar{height:180px;display:grid;place-items:center;background:#e7ecff;color:#27428b;font:64px Georgia,serif}.dating-badge{display:inline-block;color:#075e57;background:#def7ef;padding:5px 12px;font-size:14px;border-radius:20px;margin-top:12px}.dating-card .button{margin:8px 8px 0 0}.dating-featured{display:flex;flex-wrap:wrap;gap:18px;margin:25px 0}.dating-highlight{padding:18px;background:#fff;border:2px solid #a856cd;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dating-highlight img{height:55px;width:55px;border-radius:50%;object-fit:cover}.dating-highlight span{display:block}.dating-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.dating-photo img{width:100%;height:150px;object-fit:cover}.dating-photo .button{padding:8px;font-size:14px;width:100%;margin-top:8px}.dating-chat{margin-top:40px}.dating-chat-panel{padding:24px;background:#fff;border:1px solid var(--line);min-width:0}.dating-contact{padding:20px 0;border-bottom:1px solid var(--line)}.dating-contact .button{margin:8px 8px 0 0}.dating-message{max-width:92%;padding:12px 16px;background:#f0ecf3;margin-bottom:12px;overflow-wrap:anywhere}.dating-message.mine{margin-left:auto;background:#e4edff}.dating-message p{margin:5px 0 0;white-space:pre-wrap}.dating-chat-panel .button{margin-top:16px}.dating-feed-heading{margin-top:55px}.dating-feed{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.dating-post{background:#fff;border:1px solid var(--line);padding:24px;min-width:0;overflow-wrap:anywhere}.dating-post-photo{max-height:300px;width:100%;object-fit:contain;margin:18px 0}.dating-comments{border-top:1px solid var(--line);margin:20px 0}.dating-comment{padding:16px 0;border-bottom:1px solid var(--line)}.dating-comment p{white-space:pre-wrap;margin:5px 0}.dating-post form .button{margin-top:12px}.dating-post h4{font-size:18px;margin:20px 0 12px}.dating-choice [disabled],#dating button:disabled{opacity:.6;cursor:default}#dating-status{margin-top:25px;padding:12px;background:#fff}#dating-self{margin:16px 0 0}#dating input[type=file]{overflow:hidden}#dating-message-text{min-height:100px}#dating-messages{max-height:480px;overflow:auto}.dating-choice input[type=checkbox]{flex-shrink:0}@media(max-width:700px){.brand{font-size:18px}.hero .hero-headline{font-size:clamp(40px,10vw,52px);letter-spacing:-1px}.dating-feed{grid-template-columns:1fr}.dating-photo-grid{grid-template-columns:1fr 1fr}.dating-choice,.dating-chat-panel,.dating-controls,.dating-post{padding:20px}.dating-highlight{width:100%}.dating-card .button{width:100%;margin:10px 0 0}.brand-preview{padding:16px}.dating-message{max-width:100%}}

.dating-own-card{max-width:420px;margin-top:20px}.dating-gallery{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.dating-gallery .button{min-height:40px;padding:8px 12px}

.interest-choice{padding:16px;border:1px solid var(--line);display:flex;gap:10px 25px;flex-wrap:wrap}.interest-choice .check{margin:6px 0}.interest-choice legend{padding:0 8px;font-size:14px}.dating-social{margin-top:35px}.dating-social h3{font-size:25px}#dating-profile-body{margin-top:24px}#dating-profile-body .participant-card{border:0;padding:0}#dating-profile-body .dating-photo-grid{margin-top:20px;grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){#dating-profile-body .dating-photo-grid{grid-template-columns:1fr 1fr}.interest-choice{display:block}}

.dating-location{background:white;border:1px solid var(--line);padding:24px;margin:25px 0}.dating-location h4{font-size:20px;margin:0 0 18px}.dating-location details{margin:16px 0}.dating-location .button{margin-top:12px}.dating-location .meta{margin-bottom:12px}.dating-post>.text-link{display:block;margin:16px 0}#dating-location-status{padding:14px;background:#e8f0ff}@media(max-width:700px){.dating-location{padding:20px}}

.dating-feed-tabs{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;margin:25px 0}.dating-feed-tabs p{margin:0}.dating-story-strip{display:flex;gap:12px;overflow:auto;padding:8px 0 24px}.dating-story-pill{border:2px solid #7855df;border-radius:24px;background:#fff;color:#27428b;min-width:170px;max-width:220px;padding:14px 18px;flex-shrink:0;font-weight:bold;min-height:60px}.dating-story-status{background:#e8f0ff;color:#27428b;padding:10px 14px;border-radius:6px;font-size:14px}.dating-ideas{padding:20px;background:#e8f0ff;margin:25px 0}.dating-ideas .actions{gap:8px}.dating-ideas .button{min-height:40px;padding:9px 14px}.dating-post>p:nth-of-type(2){white-space:pre-wrap}.dating-post .actions .button{padding:10px 14px}.dating-post-location{min-width:0}@media(max-width:700px){.dating-feed-tabs{grid-template-columns:1fr}.dating-ideas{padding:16px}.dating-ideas .actions .button{width:auto}.dating-story-pill{min-width:150px}}

header{flex-wrap:wrap}.information-ribbon{flex:1 0 100%;display:flex;align-items:center;gap:16px;background:#e8f0ff;border:1px solid #c7d8ff;padding:12px 18px;min-width:0;border-radius:8px}.information-body{flex:1;min-width:0}.information-label{display:block;font-size:12px;color:#27428b}.information-body strong{display:block;font-size:16px;line-height:1.3}.information-body p{font-size:14px;line-height:1.35;margin:4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.information-body small{font-size:12px;overflow-wrap:anywhere}.information-media:empty{display:none}.information-media img,.information-media video{width:120px;height:72px;object-fit:contain;background:#152b54;border-radius:4px}.information-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.information-actions .button{min-height:44px;padding:10px 14px;background:#1655ee;color:white;border-color:#1655ee}.information-pause{background:transparent;border:0;color:#27428b;font-size:12px;min-height:44px;max-width:80px;padding:5px;text-decoration:underline}.information-editor-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:18px 0}#information-editor form label{margin-bottom:16px}#information-editor form>.button{margin:16px 0}#information-cycle{margin-top:24px}html{scroll-padding-top:230px}@media(max-width:700px){.information-ribbon{padding:10px;gap:10px;margin-bottom:14px}.information-media img,.information-media video{width:70px;height:60px}.information-actions{flex-direction:column;gap:0}.information-actions .button{padding:8px;font-size:12px}.information-pause{min-height:36px}.information-body p{font-size:12px}.information-body strong{font-size:14px}.information-label{font-size:10px}.information-body small{font-size:10px}header{position:relative}html{scroll-padding-top:25px}}

.dating-price{padding:20px;background:#def7ef;border:1px solid #89cebb;margin:25px 0}.dating-price p{margin-bottom:10px}#dating-post-cost{font-weight:bold;font-size:20px}.dating-price .meta{margin-bottom:0}

@media(max-width:700px){body{padding-top:112px}.information-ribbon{position:fixed;top:0;left:0;right:0;z-index:15;border-radius:0;height:112px;margin:0;width:100%}.information-body strong,.information-body p,.information-body small{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.information-body{overflow:hidden}.information-media{flex-shrink:0}html{scroll-padding-top:130px}}

.dating-contact-exchange{margin:25px 0;padding:18px;background:#fff5dc;border:1px solid #ddbd75}.dating-contact-exchange .meta{margin:12px 0}.dating-contact-request{padding:18px 0;border-top:1px solid #ddbd75;overflow-wrap:anywhere}.dating-contact-request form label{margin:12px 0}.dating-approved-contact{font-weight:bold;color:#075e57;margin-top:20px}

#community-tools form label{margin:14px 0}#community-tools button{margin:8px 8px 8px 0}#community-group-messages{max-height:360px;overflow:auto}#community-group-members .button{min-height:40px;padding:8px 12px}#community-tools .dating-chat-panel{margin-top:20px}#community-calendar{margin-top:40px}#community-calendar .dating-feed{margin-top:25px}#community-event-form>.button{margin-top:18px}

#registration details,#good-deeds details{margin:18px 0}#good-deeds video,#good-deeds img{width:100%;max-height:300px;object-fit:contain}#good-deeds .participant-card{padding:24px}#good-deeds progress{width:100%}.case-ledger{border-top:1px solid #dedede;padding-top:12px}.brand-concept-grid img{width:100%;height:auto}#magic-result{margin-top:20px}

.site-language{display:flex;justify-content:flex-end;margin:16px 0}.site-language label{display:flex;align-items:center;gap:12px}.site-language select{max-width:280px}.language-service-note{max-width:70ch;margin:0 0 16px auto}.language-profile{margin-bottom:20px}.chat-translation-settings{padding:16px;margin:16px 0;border:1px solid #d6c1a3;border-radius:12px}.chat-translation-settings select{max-width:100%}.translation-action{margin:8px 0;background:transparent;color:inherit;border:1px solid #a47b43;border-radius:8px;padding:8px 12px;cursor:pointer}.translation-result{padding:8px 0}.translation-result:empty{display:none}.translation-result small{opacity:.7}

/* Cobalt, turquoise and gold from the supplied brand artwork. */
:root{--plum:#122347;--gold:#e5ba65;--cream:#f0f5ff;--line:#c9d6ee;--muted:#465773;--blue:#164de3;--blue-deep:#1039a9;--ribbon-offset:112px}
html{scroll-padding-top:calc(var(--ribbon-offset) + 24px)}
body{font-size:1.125rem;line-height:1.65;padding-top:var(--ribbon-offset);background:#fff}
.banner{background:#09255e;color:#f4f7ff;font-size:.875rem}
header{position:relative;gap:1rem;padding:1.5rem 5%;border-bottom:2px solid #d1dfff;box-shadow:0 8px 25px #1039a908}
.brand{display:flex;align-items:center;gap:1rem;max-width:650px;min-width:0;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:bold;color:#123797;line-height:1.3;letter-spacing:.025em}
.brand-symbol{width:4.5rem;height:4.5rem;flex-shrink:0;object-fit:contain;border-radius:1rem}
.brand>span{min-width:0;overflow-wrap:anywhere}
.brand small{margin-top:.4rem;font-size:.875rem;line-height:1.45;letter-spacing:.05em;color:#395779}
.site-language{margin:0 0 0 auto;max-width:100%}
.site-language label{font-size:1rem;flex-wrap:wrap;gap:.5rem}
.site-language select{margin-top:0;width:15rem;max-width:100%;border-color:#99b5ec;border-radius:.6rem}
.language-service-note{flex:1 0 100%;margin:0;font-size:.875rem;line-height:1.45;max-width:none}
.project-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));width:100%;gap:.75rem;margin:.5rem 0 0;padding:0;font-size:1rem;white-space:normal}
.project-nav a{display:flex;align-items:center;gap:.65rem;min-height:3.75rem;min-width:0;padding:.75rem 1rem;border:1px solid #b2c9ff;border-radius:.85rem;background:var(--blue);color:#fff;font-size:1rem;font-weight:700;line-height:1.35;transition:background .15s,color .15s,box-shadow .15s}
.project-nav a:hover,.project-nav a:focus-visible{background:var(--blue-deep);border-color:var(--blue-deep);box-shadow:0 3px 12px #164de340}
.project-nav a[aria-current="location"]{background:#092b76;border-color:var(--gold);color:#fff;box-shadow:0 0 0 1px var(--gold),0 4px 14px #164de332}
.nav-icon{display:block;flex-shrink:0;width:1.75rem;height:1.75rem;color:#ffe0a3}
.nav-label{overflow-wrap:anywhere}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #1376db;outline-offset:4px}
.eyebrow{font-size:.875rem;letter-spacing:.1em;color:#1641ad}
.hero{gap:2.75rem;background:linear-gradient(145deg,#fff 45%,#edf4ff)}
.hero .hero-headline{font-size:clamp(3rem,6vw,5.5rem);line-height:1.09;letter-spacing:-.025em;color:#102958}
.hero em{color:#a87619}
.lead{font-size:1.375rem;line-height:1.55;color:#173767}
.meta,figcaption,small{font-size:.875rem;line-height:1.55;color:var(--muted)}
.button{min-height:3.25rem;padding:.85rem 1.35rem;font-size:1rem;border-radius:.7rem;background:var(--blue);border-color:var(--blue);color:#fff;line-height:1.4}
.button:hover{background:var(--blue-deep);border-color:var(--blue-deep)}
.button.outline{background:transparent;color:var(--blue-deep);border-color:#6b91e5}
.button.outline:hover{background:#e8f0ff;color:#123797}
.dark .button.outline{color:#ffe5a6;border-color:#e5ba65}
.dark .button.outline:hover{background:#173969}
.dark .eyebrow{color:#f4d497}
.dark .meta{color:#d9e6ff}
.result{background:#1a345e}
.dark input{background:#142b50;border-color:#7896c0}
.dark article,.dark dl div,.note,.saved{border-color:#49688f}
label,summary{font-size:1rem;line-height:1.5}
input,select,textarea{border-color:#8aa5ce;border-radius:.5rem}
.brand-preview{padding:0;border-radius:1rem;overflow:hidden;background:#082451;border:1px solid #cdae68;box-shadow:0 16px 38px #142a5f25}
.brand-preview img{width:100%;height:auto;border:0}
.brand-preview figcaption{padding:1rem 1.25rem .5rem;margin:0;color:#fff1ce;font-size:1rem}
.brand-preview label{padding:.5rem 1.25rem 1.25rem;color:#e5edff;font-size:.875rem}
.brand-preview select{font-size:1rem;margin-top:.5rem}
.day-tab{font-size:1rem;font-weight:bold;min-height:6rem;color:#23477f;border-radius:.6rem .6rem 0 0;background:#f0f5ff;border-bottom-width:4px;padding:1rem}
.day-tab span{font-size:.875rem;margin-bottom:.3rem;letter-spacing:.02em}
.day-tab:hover{background:#dce8ff}
.day-tab[aria-selected="true"]{background:var(--blue);color:#fff;border-color:var(--gold)}
.stats{font-size:1rem;background:#f0f5ff}
.stats b{color:#1641ad;font-size:2rem}
.hero-film{grid-column:1/-1;margin-top:1rem;padding:1.75rem;border-radius:1rem;background:#092451;color:#fff;box-shadow:0 12px 36px #09245120;min-width:0}
.hero-film-heading{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}
.hero-film-heading h2{font-size:clamp(1.75rem,3vw,2.5rem);margin:.5rem 0 0;letter-spacing:-.02em}
.hero-film .eyebrow{color:#f2cc7b}
.hero-film .meta{color:#d3e1ff;margin:0;font-size:.875rem}
#project-film{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#060f29;border:1px solid #9c854e;border-radius:.7rem}
#project-film::cue{font-family:Arial,sans-serif;font-size:clamp(1rem,2vw,1.625rem);color:#fff;background:#05162ee6;text-shadow:0 1px 2px #000}
.film-controls{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0}
.film-controls .button.outline{color:#fff1cf;border-color:#d7b779;background:#12366b}
.film-controls .button.outline:hover{background:#1e4d91}
.film-controls .button[aria-pressed="true"]{background:#174fd5;border-color:#82afff;color:#fff}
.film-description{font-size:.875rem;color:#d4e3ff;margin:1rem 0 0}
.film-transcript{border-color:#46618d;margin-top:1rem;padding:1rem 0 0}
.film-transcript summary{color:#ffe0a1;font-size:1rem}
.film-transcript p{font-size:1rem;color:#e7efff}
.information-ribbon{position:fixed;top:0;left:0;right:0;width:100%;height:auto;min-height:112px;z-index:15;margin:0;border-radius:0;padding:1rem 5%;background:#e8f0ff;border-bottom:2px solid #87aaf2;gap:1rem}
.information-label{font-size:.875rem;line-height:1.35;color:#1641ad}
.information-body strong{font-size:1.125rem;line-height:1.35;color:#122c67}
.information-body p{font-size:.875rem;line-height:1.45;-webkit-line-clamp:2}
.information-body small{font-size:.75rem;line-height:1.4}
.information-pause{font-size:.875rem;line-height:1.25;max-width:100px;min-height:44px}
.information-actions .button{font-size:.875rem}
@media(max-width:700px){
 header{padding:1.25rem 5%;display:flex;gap:1rem}
 .brand{font-size:1.25rem;gap:.75rem}
 .brand-symbol{width:3.75rem;height:3.75rem;border-radius:.75rem}
 .brand small{font-size:.875rem;letter-spacing:.015em}
 .site-language{margin:0;width:100%}
 .site-language label{width:100%;justify-content:space-between}
 .site-language select{width:13rem}
 .project-nav{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;padding:0;scroll-snap-type:none;gap:.5rem;max-width:100%}
 .project-nav a{flex-direction:column;justify-content:center;text-align:center;gap:.25rem;min-height:4rem;padding:.35rem .3rem;font-size:.875rem;line-height:1.3;border-radius:.7rem}
 .project-nav .nav-icon{width:1.4rem;height:1.4rem}
 .hero{gap:1.5rem}
 .hero .hero-headline{font-size:clamp(2.75rem,12vw,3.5rem);letter-spacing:-.025em}
 .lead{font-size:1.25rem}
 .hero-film{padding:1rem;margin-top:.5rem}
 .hero-film-heading{margin-bottom:1rem}
 .film-controls .button{flex:1 1 9rem}
 .day-tab{font-size:1rem;padding:.8rem .6rem}
 .day-tab span{font-size:.875rem}
 .information-ribbon{padding:.6rem 5%;gap:.6rem;min-height:112px}
 .information-body strong{font-size:1rem;-webkit-line-clamp:2}
 .information-body p{font-size:.875rem;-webkit-line-clamp:1}
 .information-body small{font-size:.75rem;-webkit-line-clamp:1}
 .information-label{font-size:.75rem}
 .information-actions{flex-direction:column;gap:0;flex-shrink:0}
 .information-actions .button{font-size:.875rem;min-height:44px;padding:.5rem}
 .information-pause{font-size:.75rem;min-height:36px}
 .information-media img,.information-media video{width:4rem;height:3.5rem}
 .information-media{flex-shrink:0}
 .stats b{font-size:1.6rem}
}
@media(max-width:340px){.project-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.project-nav a{transition:none}}

/* Separate identity-document verification in the private prototype. */
.document-verification-panel{margin-top:2rem;padding:clamp(1rem,3vw,2rem);border:2px solid #164de3;border-radius:24px;background:#eef3ff;color:#102448}
.document-verification-panel h3{margin-top:.25rem}
.document-verification-panel fieldset{min-width:0}
.document-verification-panel .callout{background:#fff}
.document-badge{display:flex;align-items:center;gap:.5rem;align-self:flex-start;width:fit-content;max-width:100%;padding:.4rem .7rem;border:1px solid #9ab8ff;border-radius:999px;background:#edf3ff;color:#123ba5;font-size:.85rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.document-badge-mark{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#164de3;color:#fff;font-size:16px}
#registration fieldset{min-width:0}
#document-verification-form{margin:1rem 0}

.hero-edition-brand{font:700 24px/1.4 Georgia,serif;letter-spacing:.04em;margin:0 0 1rem;color:#123b86}
.hero-edition-brand small{display:block;font:400 15px/1.7 Arial,sans-serif;letter-spacing:.02em;color:#52657f}
.international-eligibility{margin-bottom:2rem}

.application-route-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.route-choice{display:flex;align-items:flex-start;gap:.8rem;padding:1rem;border:2px solid #a7bcef;border-radius:18px;background:#fff;cursor:pointer}
.route-choice:has(input:checked){border-color:#164de3;background:#eaf1ff}
.route-choice input{width:20px;min-height:20px;flex:0 0 20px;margin-top:4px;padding:0}
.route-choice strong,.route-choice small{display:block}
.route-notice{font-weight:700;color:#123b86}
@media(max-width:600px){.application-route-options{grid-template-columns:1fr}}

.personal-status-panel{margin:2rem 0;padding:clamp(1rem,3vw,2rem);border:2px solid #164de3;border-radius:24px;background:#f4f7ff}
.personal-status-feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}
.personal-status-card{padding:1rem;border:1px solid #aac0ef;border-radius:18px;background:#fff;min-width:0}
.personal-status-card img,.personal-status-card video{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:12px;background:#102448;margin-bottom:1rem}
.personal-status-card .button{margin:.4rem .4rem .4rem 0}
.personal-status-text{white-space:pre-wrap;overflow-wrap:anywhere}
#personal-status-contact-selection{min-width:0}
.brand-geography-note{max-width:900px}

.project-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.project-contact-grid a{overflow-wrap:anywhere}.project-contacts h3{font-size:18px;margin:0 0 10px}@media(max-width:640px){.project-contact-grid{grid-template-columns:minmax(0,1fr);gap:24px}}

/* Bright navigation accents; the filled red heart identifies dating. */
.project-nav a:is([href="#program"],[href="#media"],[href="#help"]) .nav-icon{color:#91f0ff}
.project-nav a:is([href="#package"],[href="#connections"]) .nav-icon{color:#ffd466}
.project-nav a:is([href="#registration"],[href="#good-deeds"],[href="#budget"]) .nav-icon{color:#9cf5d4}
.project-nav a:is([href="#participants"],[href="#magic"]) .nav-icon{color:#e3c0ff}
.project-nav a:is([href="#casting"],[href="#cabinet"]) .nav-icon{color:#ffc9aa}
.project-nav a[href="#dating"]{background:#12378f;border-color:#ff9eb6}
.project-nav a[href="#dating"] .nav-icon{color:#ff4d6d;fill:#ff4d6d;stroke:#ffcad7;stroke-width:1.6;width:2rem;height:2rem}
.project-nav a[href="#dating"]:is(:hover,:focus-visible){background:#0b2b7c;border-color:#ffc1d0}
.project-nav a[href="#dating"][aria-current="location"]{background:#092b76;border-color:#ff9eb6;box-shadow:0 0 0 1px #ff9eb6,0 4px 14px #164de332}
@media(max-width:840px){.project-nav a[href="#dating"] .nav-icon{width:1.7rem;height:1.7rem}}

/* Persistent section access; native details also works without JavaScript. */
.quick-navigation{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:flex;align-items:flex-end;gap:.5rem;z-index:18;font-size:1rem}
.quick-navigation details{margin:0;padding:0;border:0;position:relative}
.quick-navigation summary,.quick-navigation .back-to-start{display:block;min-height:48px;padding:.75rem 1rem;background:#12378f;color:#fff;border:1px solid #a4bfff;border-radius:.75rem;font-weight:700;box-shadow:0 4px 16px #09245125;cursor:pointer;font-size:1rem}
.quick-navigation summary::marker{color:#ffe0a3}
.quick-navigation details[open] summary{border-color:#e0bc71}
.quick-navigation nav{position:absolute;bottom:calc(100% + .5rem);right:0;width:min(21rem,calc(100vw - 2rem));max-height:65vh;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin:0;padding:.75rem;background:#fff;border:1px solid #a4bfff;border-radius:1rem;box-shadow:0 8px 30px #09245135;white-space:normal;color:#12378f}
.quick-navigation nav a{display:flex;align-items:center;min-height:48px;padding:.55rem .7rem;border-radius:.55rem;font-size:1rem;line-height:1.3;overflow-wrap:anywhere}
.quick-navigation nav a:hover,.quick-navigation nav a:focus-visible,.quick-navigation nav a[aria-current=location]{background:#e8f0ff;color:#09255e}
.project-contact-grid a{overflow-wrap:anywhere}
footer{padding-bottom:6rem}
@media(max-width:380px){.quick-navigation{right:.75rem;bottom:.75rem}.quick-navigation nav{grid-template-columns:1fr 1fr}.quick-navigation summary,.quick-navigation .back-to-start{padding:.75rem .8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.participation-packages .package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;align-items:stretch;margin:2rem 0}.participation-packages .package-card{display:flex;flex-direction:column;padding:1.5rem;border:1px solid #58709c;border-radius:16px;margin:0;background:#ffffff06}.participation-packages .package-card h3{font-size:1.65rem;line-height:1.2;margin:.3rem 0 1rem}.participation-packages .package-card>p{font-size:1rem;line-height:1.6}.participation-packages .package-kicker{color:#d8bc86;font-size:.875rem!important;font-weight:700;letter-spacing:.06em}.participation-packages ul{padding-left:1.2rem;flex:1;line-height:1.6;font-size:1rem;margin:.25rem 0 1.5rem}.participation-packages li{padding:.45rem 0}.participation-packages .package-payment{border-top:1px solid #58709c;padding-top:1rem;font-size:1rem;line-height:1.6}.participation-packages .package-payment p{margin:0 0 .5rem}.participation-packages .package-price{font-size:2rem;line-height:1.3;color:#e7d2a7;white-space:nowrap}.participation-packages .brand-package{border-color:#bea777;background:#d8bc860a}.participation-packages .package-terms{font-size:.9375rem;line-height:1.6;color:#d7dfed;max-width:72rem;margin:1rem 0}.participation-packages .lead{max-width:60rem}@media(max-width:1050px){.participation-packages .package-grid{grid-template-columns:1fr 1fr}.participation-packages .brand-package{grid-column:1/-1}}@media(max-width:700px){.participation-packages .package-grid{grid-template-columns:minmax(0,1fr);gap:1rem}.participation-packages .brand-package{grid-column:auto}.participation-packages .package-card{padding:1.25rem}.participation-packages h2{font-size:2.25rem}.participation-packages .lead{font-size:1.125rem}}

.privacy-notice{position:fixed;z-index:1000;left:1rem;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));max-width:850px;margin:auto;padding:1.2rem;background:#fff;color:#162138;border:1px solid #c9d3e3;border-radius:18px;box-shadow:0 14px 60px #07183133;display:flex;align-items:flex-end;gap:1rem}.privacy-notice[hidden]{display:none!important}.privacy-notice h2{font-size:1.15rem;margin:0 0 .5rem;color:#162138}.privacy-notice p{font-size:1rem;line-height:1.45;margin:.5rem 0;color:#41526e}.privacy-notice a{color:#1655ee;text-decoration:underline}.privacy-notice .button{flex:none;min-height:46px;white-space:nowrap}.legal-links{line-height:1.8;overflow-wrap:anywhere}@media(max-width:520px){.privacy-notice{left:.65rem;right:.65rem;padding:1rem;display:block;max-height:70dvh;overflow:auto}.privacy-notice .button{width:100%;margin-top:.5rem}}

.ticket-navigation{margin:1.5rem 0}.ticket-anchor{scroll-margin-top:2rem}.spectator-ticket{margin-top:2rem;max-width:52rem}.spectator-ticket p{overflow-wrap:anywhere}

.final-event-details{display:grid;gap:1rem;margin:1.5rem 0}.final-event-details dt{font-weight:700}.final-event-details dd{margin:.3rem 0 0;overflow-wrap:anywhere}

#brand-preview-image{display:block;width:100%;height:auto;object-fit:contain;max-height:none}

.payment-methods{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:24px 0}.payment-methods li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:18px 12px;border:1px solid #d9c99b;border-radius:16px;background:#fff9ed;color:#162443}.payment-methods svg{width:36px;height:36px;color:#976822}.payment-methods span{font-size:.82rem;line-height:1.4}.sbp-payment{margin-top:24px}@media(max-width:600px){.payment-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

.project-nav a.business-entry{background:linear-gradient(110deg,#edbe5f,#fff0bd);color:#132e55;border-radius:14px;font-weight:800;box-shadow:0 3px 16px #dbab4050}.history-section details{padding:24px;background:#f3f6fc;border:1px solid #dce4f2;border-radius:20px}.history-section summary{cursor:pointer;font-size:20px;font-weight:700}

#mobile-help{max-width:600px;width:calc(100% - 32px);max-height:85vh;overflow:auto;border:1px solid #d6dff0;border-radius:22px;padding:28px;color:#172644}#mobile-help::backdrop{background:#10234999}

.messenger-links{display:flex;gap:12px;align-items:center;margin:16px 0}.messenger-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:18px;color:#fff!important;box-shadow:0 8px 22px #0002;transition:transform .18s}.messenger-icon svg{width:32px;height:32px}.telegram-icon{background:#229ed9}.whatsapp-icon{background:#128c4a}.messenger-icon:hover{transform:translateY(-3px)}.messenger-icon:focus-visible{outline:3px solid #e6b94e;outline-offset:4px}

.forum-join{background:linear-gradient(120deg,#ffe39b,#f1b644)!important;color:#102349!important;font-weight:800;box-shadow:0 8px 24px #c8983933}.forum-invite{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;border-radius:28px;background:radial-gradient(ellipse at right,#245da7,transparent 65%),#102349;color:white;padding:40px;margin:24px 0}.forum-invite h2{color:white;font-size:clamp(28px,4vw,48px)}.forum-invite .eyebrow{color:#f9d47e}.forum-invite p{max-width:620px}.forum-read{display:block;color:#e4edff;margin-top:18px}.forum-invite-art{display:flex;gap:20px;justify-content:center;align-items:center}.forum-invite-art span{font-size:100px;color:#f9d47e}.forum-invite-art b{font-size:32px;line-height:1.5;letter-spacing:.12em}@media(max-width:700px){.forum-invite{grid-template-columns:1fr;padding:26px}.forum-invite-art{display:none}.forum-join{white-space:normal}}

.magic-symbol{padding:16px 20px;background:#f2f5ff;border-radius:16px;margin:12px 0}.magic-symbol h4{color:#164edc;font-size:19px;margin:0 0 10px}#magic-result{scroll-margin-top:130px}
#magic-dialog{width:min(720px,calc(100% - 24px));max-height:85vh;border:0;border-radius:24px;padding:24px;color:#102349;overflow:auto}#magic-dialog::backdrop{background:#071936bf}.magic-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.magic-dialog-heading h2{font-size:25px;margin:0}

.site-top{position:sticky;top:0;z-index:6;background:#fff;box-shadow:0 3px 18px #24172616}.site-top header{position:static}.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:8px 5%;background:#241726;color:#fff}.top-actions .messenger-links{margin:0;gap:10px}.top-actions .messenger-icon{width:40px;height:40px}.top-action{display:flex;align-items:center;justify-content:center;gap:9px;min-height:40px;padding:7px 14px;border:1px solid #dfc395;border-radius:8px;background:#dfc395;color:#241726;font-size:13px;font-weight:bold;cursor:pointer}.top-action svg{width:23px;height:23px;flex:none}html{scroll-padding-top:240px}@media(max-width:700px){.top-actions{justify-content:center;gap:8px;padding:8px 3%}.top-action{padding:7px 9px;font-size:11px;gap:5px}.top-action span{max-width:110px;line-height:1.25}.top-actions .messenger-icon{width:36px;height:36px}.site-top header{padding:8px 4%}.site-top .project-nav{max-height:76px;overflow-y:auto;margin-top:8px}html{scroll-padding-top:235px}}

/* Compact actions stay below the fixed information ribbon during scrolling. */
.site-top{position:static;box-shadow:none}.top-actions{position:fixed;top:112px;left:0;right:0;z-index:16;height:48px;justify-content:center;padding:5px 3%;gap:10px;background:#fff;border-bottom:1px solid #d1dfff;box-shadow:0 3px 10px #1039a915}.top-actions .messenger-icon{width:34px;height:34px;border-radius:11px;box-shadow:none}.top-actions .messenger-icon svg{width:23px;height:23px}.top-action{min-height:34px;height:34px;padding:5px 9px;border-radius:8px;background:#eef3ff;color:#1646b8;border-color:#d1dfff;font-size:11px}.top-action svg{width:20px;height:20px}.top-action span{line-height:1.15}.site-top header{padding:1.5rem 5%}.site-top .project-nav{max-height:none;overflow:visible}body{padding-top:160px}html{scroll-padding-top:175px}@media(max-width:700px){.top-actions{gap:8px}.top-action{padding:5px 7px}.top-action span{max-width:88px}.site-top header{padding:1.25rem 5%}.site-top .project-nav{margin-top:15px;max-height:none;overflow:visible}}
.information-ribbon{height:112px;min-height:112px;max-height:112px;overflow:hidden}.information-body{min-width:0}.information-body p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.information-media img,.information-media video{max-height:76px}@media(max-width:700px){.information-body p{-webkit-line-clamp:1}}

.top-action{background:linear-gradient(135deg,#ffdc61,#f0b72f);border-color:#e4ac26;color:#392806;box-shadow:0 2px 8px #e6b94e55}.top-action:hover{background:#ffe58d}
