:root{--paper:#fff9ed;--surface:#fffef8;--ink:#27372e;--muted:#59665e;--line:#374c3d;--yellow:#ffe16d;--teal:#9bdcd2;--pink:#ffb7bb;--lilac:#d9ccf6;--green:#bcd78c;--shadow:4px 5px 0 #374c3d;--softline:#d9dccb;--radius:18px;color-scheme:light;font-family:'Trebuchet MS',ui-rounded,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.55;background-image:radial-gradient(#374c3d12 .75px,transparent .75px);background-size:9px 9px}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a.button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #007567;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;overflow-wrap:anywhere}h1{font-size:clamp(2.15rem,4.5vw,3.7rem);letter-spacing:-1.7px;margin-bottom:16px}h2{font-size:1.65rem;margin-bottom:12px}h3{font-size:1.25rem;margin-bottom:8px}h1,h2,.wordmark{font-family:'Segoe Print','Chalkboard SE','Comic Sans MS',Georgia,serif}p{margin-bottom:14px}img{max-width:100%}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:15px;background:var(--yellow);padding:12px;z-index:100}.skip:focus{top:10px}.site-bar{position:sticky;top:0;z-index:30;min-height:80px;padding:14px 30px;background:var(--paper);border-bottom:2px solid var(--line);display:flex;align-items:center;gap:25px}.wordmark{text-decoration:none;font-size:23px;font-weight:900;display:flex;gap:10px;align-items:center;white-space:nowrap}.wordmark small{font:10px system-ui;letter-spacing:1.7px;display:block}.site-bar>.public-links{display:flex;gap:22px;margin-left:auto;align-items:center}.public-links a{text-decoration:none;min-height:44px;display:flex;align-items:center}.account-chip{border:2px solid var(--line);border-radius:40px;display:flex;align-items:center;gap:8px;padding:5px 14px;min-height:44px;background:var(--yellow);text-decoration:none;font-weight:700}.account-chip img{width:30px;height:30px;object-fit:cover;border-radius:50%}.mobile-toggle{display:none;min-height:44px;min-width:44px;background:var(--teal);border:2px solid var(--line);border-radius:10px}.workspace{display:grid;grid-template-columns:248px minmax(0,1fr);max-width:1600px;margin:auto}.sidebar{border-right:2px solid var(--line);padding:24px 15px;min-height:calc(100vh - 80px);background:#fffdf5d9}.sidebar details{margin:0 0 8px;border-radius:12px}.sidebar summary{cursor:pointer;list-style:none;min-height:45px;padding:10px 10px;font-weight:800;display:flex;gap:11px;align-items:center}.sidebar summary::after{content:'+';margin-left:auto}.sidebar details[open] summary::after{content:'−'}.sidebar details[open]{background:var(--teal)}.sidebar details[open]:nth-child(2n){background:var(--yellow)}.sidebar details[open]:nth-child(3n){background:var(--lilac)}.sidebar .subitems{padding:0 8px 10px 32px;display:grid}.sidebar a{min-height:39px;padding:8px 9px;text-decoration:none;border-radius:7px;font-size:14px}.sidebar a[aria-current=page]{background:var(--surface);font-weight:bold;box-shadow:1px 2px 0 var(--line)}.sidebar .sidebar-bottom{margin-top:24px;padding:16px 8px;border-top:1px dashed var(--line);font-size:12px}.sidebar-bottom a{display:block}.workspace main{min-width:0;padding:22px clamp(20px,3vw,50px) 70px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--muted);margin:0 0 20px}.breadcrumbs a{text-decoration:none}.breadcrumbs span{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subnav,.record-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:0 0 19px;border-bottom:1px dashed var(--line);margin-bottom:25px}.subnav a,.record-tabs a{min-height:42px;display:flex;align-items:center;padding:7px 13px;border:1.5px solid transparent;border-radius:8px;text-decoration:none;font-size:13px;font-weight:700}.subnav a[aria-current],.record-tabs a[aria-current]{background:var(--yellow);border-color:var(--line)}.page-head{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;margin:26px 0 28px}.page-head>div:first-child{min-width:0}.lead{max-width:690px;color:var(--muted);font-size:17px}.eyebrow{font-size:11px;letter-spacing:1.6px;font-weight:900;text-transform:uppercase;margin-bottom:10px}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border:2px solid var(--line);border-radius:10px;background:var(--yellow);box-shadow:2px 3px 0 var(--line);color:var(--ink);text-decoration:none;font-weight:800;font-size:14px}.button:hover{transform:translateY(-1px);box-shadow:3px 4px 0 var(--line)}.button.secondary{background:var(--surface)}.button.danger{background:var(--pink)}button.text{background:none;border:0;text-decoration:underline;min-height:44px;padding:9px;color:inherit}.panel{background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:23px;box-shadow:3px 4px 0 #374c3d20}.panel.tinted{background:var(--teal)}.panel-grid,.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{min-width:0;position:relative;background:var(--surface);border:2px solid var(--line);border-radius:18px 15px 19px 14px;padding:21px;box-shadow:3px 4px 0 #374c3d30;display:flex;flex-direction:column;gap:8px;text-decoration:none}.card .card-icon{font-size:32px}.card:nth-child(4n+1) .label{background:var(--yellow)}.card:nth-child(4n+2) .label{background:var(--teal)}.card:nth-child(4n+3) .label{background:var(--pink)}.card:nth-child(4n) .label{background:var(--lilac)}.card h2,.card h3{margin:0 0 5px}.card p{color:var(--muted);margin:0 0 8px;white-space:pre-wrap;overflow-wrap:anywhere}.card .card-foot{font-size:12px;margin-top:auto;padding-top:15px;display:flex;justify-content:space-between;gap:10px;color:var(--muted)}.card-cover{width:100%;height:205px;object-fit:cover;display:block;border-radius:9px;border:1px solid var(--softline);margin-bottom:10px}.label{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.8px;font-weight:900;text-transform:uppercase;padding:4px 9px;border-radius:6px;width:fit-content}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:35px 0 18px}.section-title h2{margin:0}.empty{text-align:center;padding:45px 24px;background:var(--surface);border:2px dashed var(--softline);border-radius:18px;margin:15px 0 24px}.empty>span{font-size:34px;color:#6d8170}.empty p{color:var(--muted);max-width:470px;margin:10px auto 23px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.toolbar .field{flex:1;margin:0;min-width:180px}.muted{color:var(--muted);font-size:13px}.notice{background:var(--yellow);border:1.5px dashed var(--line);border-radius:11px;padding:15px 18px;margin-bottom:22px;font-size:14px}.notice.error{background:#ffe3df}.loading{padding:70px;text-align:center;font-size:20px}.field{display:grid;gap:7px;font-weight:700;font-size:13px;margin-bottom:19px}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:46px;border:1.5px solid var(--line);border-radius:8px;padding:11px 12px;background:var(--paper);color:var(--ink);font-size:15px;font-weight:400}.field textarea{resize:vertical;line-height:1.6;min-height:110px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.field.full,.full{grid-column:1/-1}.form-panel{max-width:850px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:600;font-size:14px;padding:9px 0;margin:8px 0 20px}.check input{accent-color:#317266;width:19px;height:19px;flex:none;margin-top:2px}.form-status{font-size:14px;margin:14px 0 0;white-space:pre-wrap}.form-status.error{color:#a62a32}.form-hint{font-size:12px;color:var(--muted);margin-bottom:20px}.star-field{border:0;padding:0;margin:0 0 22px}.star-field legend{font-size:14px;font-weight:800;margin-bottom:8px}.star-row{display:flex;gap:6px;flex-wrap:wrap}.star-row label{cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:47px;min-height:47px;background:var(--paper);border:1.5px solid var(--line);border-radius:8px;font-weight:bold}.star-row input{position:absolute;opacity:0;width:1px;height:1px}.star-row label:has(input:checked){background:var(--yellow);box-shadow:2px 3px 0 var(--line)}.star-row label:focus-within{outline:3px solid #007567;outline-offset:2px}.stars-meaning{font-size:13px;margin:10px 0;color:var(--muted)}.record-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.facts{display:grid;grid-template-columns:max-content 1fr;gap:12px 20px;font-size:14px}.facts dt{font-weight:800}.facts dd{margin:0;overflow-wrap:anywhere}.photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:18px 0}.photo{min-width:0;margin:0;background:var(--surface);padding:12px 12px 16px;border:1px solid var(--softline);box-shadow:3px 5px 0 #374c3d22;position:relative}.photo-window{overflow:hidden;aspect-ratio:4/3;border-radius:5px}.photo-window img{width:100%;height:100%;object-fit:cover;display:block}.photo figcaption{font-size:14px;padding:12px 5px 0}.layout-postcard .photos .photo:nth-child(odd){transform:rotate(-1deg)}.layout-postcard .photo::before,.layout-notebook .photo::before{content:'';position:absolute;z-index:1;top:-9px;left:33%;width:33%;height:22px;background:#ffe16dbb;transform:rotate(-4deg)}.layout-story .photos{grid-template-columns:1fr}.layout-story .photo-window{aspect-ratio:16/10}.photo-edit{display:grid;grid-template-columns:120px minmax(0,1fr);gap:15px;align-items:start;border-bottom:1px dashed var(--softline);padding:17px 0}.photo-edit img{width:120px;height:130px;object-fit:cover;border-radius:8px}.photo-edit .field{margin:0 0 10px}.photo-edit .actions .button{font-size:12px;padding:7px 10px}.picker{width:min(870px,94vw);max-height:90vh;padding:24px;background:var(--paper);color:var(--ink);border:2px solid var(--line);border-radius:18px}.picker::backdrop{background:#182e26aa}.picker-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:20px 0}.picker-item{border:2px solid var(--line);border-radius:10px;background:var(--surface);padding:10px;text-align:left;color:var(--ink)}.picker-item img{width:100%;height:130px;object-fit:cover;display:block;margin-bottom:8px}.picker-item span{display:block;font-size:12px;overflow-wrap:anywhere}.timeline{padding-left:24px;border-left:3px solid var(--teal)}.timeline-item{position:relative;padding:8px 0 24px}.timeline-item::before{content:'';position:absolute;left:-33px;top:14px;border:2px solid var(--line);width:13px;height:13px;border-radius:50%;background:var(--yellow)}.timeline-item h3{margin:0 0 5px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.week-day{min-width:0;background:var(--surface);border:1.5px solid var(--line);border-radius:10px;padding:10px}.week-day h3{font:800 14px system-ui;margin:0 0 12px}.week-day a{font-size:12px;display:block;border-top:1px dashed var(--softline);padding:10px 0;text-decoration:none;overflow-wrap:anywhere}.week-day a small{display:block;color:var(--muted);font-size:10px}.tree-viewport{width:100%;overflow:auto;background:var(--surface);border:1.5px solid var(--line);border-radius:15px;max-height:680px}.tree-viewport svg{display:block}.tree-node rect{fill:var(--paper);stroke:var(--line);stroke-width:2}.tree-node text{fill:var(--ink);font:14px system-ui}.tree-node:hover rect{fill:var(--yellow)}.tree-line{stroke:#799d77;stroke-width:2.5;fill:none}.tree-partner{stroke:#cb8790;stroke-dasharray:5 4}.tree-tools{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.tree-tools .button{padding:7px 13px}.auth-wrap{max-width:1050px;margin:6vh auto;padding:25px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.auth-art{padding:25px}.auth-art .auth-mascots{font-size:90px;margin-bottom:30px}.auth-art p{color:var(--muted)}.auth-card{background:var(--surface);border:2px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}.auth-card .button{width:100%}.auth-card h1{font-size:33px;letter-spacing:-.8px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:14px 22px;border:2px solid var(--line);background:var(--yellow);color:var(--ink);border-radius:12px;box-shadow:3px 4px 0 #374c3d;max-width:90vw;z-index:100;font-weight:600}.home-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:center;border:2px solid var(--line);border-radius:24px 17px 23px 16px;padding:30px;background:var(--teal);box-shadow:4px 5px 0 var(--line);margin:26px 0 33px}.home-hero h1{font-size:clamp(32px,4vw,56px)}.home-hero .hero-art{background:var(--paper);padding:12px;border:2px solid var(--line);border-radius:14px;transform:rotate(2deg)}.home-hero img{width:100%;max-height:290px;object-fit:contain;display:block}.home-hero svg{display:block;width:100%;max-height:280px}.home-hero p{max-width:520px}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.stat-box{padding:18px;border:1.5px solid var(--line);border-radius:11px;background:var(--yellow)}.stat-box:nth-child(2){background:var(--pink)}.stat-box:nth-child(3){background:var(--lilac)}.stat-box strong{font-size:25px;display:block}.stat-box span{font-size:12px}.progress{height:11px;width:100%;accent-color:#397362;margin:12px 0}.record-list{display:grid;gap:13px}.list-row{border:1.5px solid var(--softline);border-radius:10px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;background:var(--surface)}.list-row>div:first-child{min-width:0}.list-row p{font-size:13px;color:var(--muted);margin:5px 0 0}.list-row .actions{flex:none}.shopping-row{display:flex;gap:14px;align-items:center;min-height:55px;border-bottom:1px dashed var(--softline)}.shopping-row input{width:23px;height:23px;accent-color:#367769}.shopping-row:has(:checked) a{text-decoration:line-through;color:var(--muted)}.code-link{width:100%;min-height:70px;overflow-wrap:anywhere;padding:15px;background:var(--paper);border:1px dashed var(--line);border-radius:8px;display:block}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.poll-option{display:flex;gap:18px;align-items:center;justify-content:space-between;margin:12px 0}.poll-option .button{min-width:145px}.version{font-size:11px;color:var(--muted);letter-spacing:.4px}.night{--paper:#17261f;--surface:#23382b;--ink:#f8eedb;--muted:#cecaba;--line:#b6cfae;--yellow:#554b25;--teal:#244d48;--pink:#613b47;--lilac:#403d59;--green:#374e28;--softline:#4d5d4c;color-scheme:dark}.night .sidebar{background:#182920}.night .toast{box-shadow:none}.night .tree-line{stroke:#a5cc9b}body[data-reduced=true] *,body[data-reduced=true] *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(min-width:1200px){.sidebar{position:sticky;top:80px;height:calc(100vh - 80px);overflow:auto}}@media(max-width:1100px){.week-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero{grid-template-columns:1fr}.home-hero .hero-art{display:none}.site-bar{padding:12px 20px}.site-bar>.public-links{gap:16px}.workspace{grid-template-columns:215px minmax(0,1fr)}}@media(max-width:800px){.workspace{display:block}.sidebar{display:none;border-right:0;border-bottom:2px solid var(--line);min-height:auto}.sidebar.is-open{display:block}.mobile-toggle{display:block}.site-bar{gap:12px;padding:11px 16px;min-height:73px}.site-bar>.public-links{display:none}.account-chip{margin-left:auto;font-size:12px}.wordmark{font-size:19px}.wordmark small{font-size:8px}.workspace main{padding:19px 18px 55px}.cards,.panel-grid{grid-template-columns:1fr 1fr}.page-head{flex-direction:column;gap:5px}.page-head h1{letter-spacing:-1px}.subnav{gap:1px;margin-bottom:18px}.subnav a{font-size:12px;padding:7px 9px}.auth-wrap{grid-template-columns:1fr;max-width:580px;margin:20px auto;gap:0}.auth-art{padding:0 10px 20px}.auth-art .auth-mascots{font-size:55px;margin-bottom:10px}.auth-art h2{display:none}.auth-art p{display:none}}@media(max-width:550px){body{font-size:15px}.cards,.cards.three,.panel-grid,.form-grid{grid-template-columns:1fr}.panel{padding:19px}.home-hero{padding:24px 20px}.stat-row{gap:9px}.stat-box{padding:13px}.stat-box strong{font-size:23px}.photos{gap:12px}.photo{padding:7px 7px 12px}.photos .photo figcaption{font-size:12px}.photo-edit{grid-template-columns:85px 1fr}.photo-edit img{width:85px;height:110px}.week-grid{grid-template-columns:1fr}.week-day h3{font-size:16px}.week-day a{font-size:14px}.picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.picker{padding:18px}.list-row{flex-direction:column}.list-row .actions{flex-wrap:wrap}.auth-card{padding:24px}.facts{grid-template-columns:1fr;gap:4px}.facts dd{margin-bottom:14px}.account-chip{padding:4px 9px}.account-chip .user-name{max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-hero h1{font-size:36px}.page-head h1{font-size:33px}.panel h2{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*::before{scroll-behavior:auto!important;animation:none!important;transition:none!important}.button:hover{transform:none}}@media print{.sidebar,.site-bar,.subnav,.actions,.toast{display:none}.workspace{display:block}.workspace main{padding:0}.panel,.card{box-shadow:none;break-inside:avoid}}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:28px}.calendar-grid>strong{text-align:center;font-size:13px}.calendar-day{border:1px solid var(--softline);border-radius:10px;min-height:85px;padding:10px;text-decoration:none;background:var(--surface)}.calendar-day strong{display:block}.calendar-day span{font-size:11px;color:var(--muted)}.calendar-day.has-entries{background:var(--teal);border-color:var(--line)}.calendar-day.selected{outline:3px solid var(--line);background:var(--yellow)}@media(max-width:550px){.calendar-grid{gap:4px}.calendar-day{min-height:56px;padding:7px 3px;text-align:center}.calendar-day span{font-size:9px}.calendar-grid>strong{font-size:10px}}

/* Reconciled website: readable storybook pages and library articles. */
[hidden]{display:none!important}.library-article{max-width:850px}.library-article .record-body{font-size:1.08rem;line-height:1.85;white-space:pre-wrap;margin:2rem 0}.library-article .lead{font-weight:650}.library-article .tags{margin:1.5rem 0}.about-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:center}.about-card img{width:100%;height:auto}.about-card h2{margin-bottom:1rem}.about-card p{line-height:1.8;margin-bottom:1.5rem}@media(max-width:700px){.about-card{grid-template-columns:1fr}.library-article .record-body{font-size:1rem}}

/* Account forms stay readable on phones. */
.key-row{padding:1.2rem 0;border-top:1px solid var(--line,#d7cabe)}.key-row .actions{flex-wrap:wrap}.key-row input,.form-panel input{min-width:0;max-width:100%}

/* Shared Google Calendar */
.shared-calendar-panel{padding:0;overflow:hidden}
.shared-calendar-frame{display:block;width:100%;height:720px;border:0;background:#fff}
.shared-calendar-actions{margin-top:16px}
@media(max-width:700px){.shared-calendar-frame{height:680px}}


/* Adults Only — signed-in dungeon wardrobe */
body[data-chapter="adults"]{background:#0f0a0d;color:#f8e8ed}
body[data-chapter="adults"] .site-bar{background:#170d12;border-bottom-color:#6e3948;color:#f8e8ed}
body[data-chapter="adults"] .site-bar a,body[data-chapter="adults"] .site-bar button{color:#f8e8ed}
body[data-chapter="adults"] .sidebar{background:#130b10;border-right-color:#6e3948}
body[data-chapter="adults"] .sidebar summary,body[data-chapter="adults"] .sidebar a{color:#f5dfe6}
body[data-chapter="adults"] .sidebar details[open]>summary{background:#2a1119}
body[data-chapter="adults"] .subitems a[aria-current="page"],body[data-chapter="adults"] .subnav a[aria-current="page"]{background:#7b203d;color:#fff7f9}
body[data-chapter="adults"] .workspace main{background:linear-gradient(180deg,#160d12,#0d090b)}
body[data-chapter="adults"] .breadcrumbs,body[data-chapter="adults"] .breadcrumbs a,body[data-chapter="adults"] .subnav a{color:#d9b7c2}

.adult-page{--adult-bg:#120a0f;--adult-card:#211119;--adult-card-2:#2b1420;--adult-line:#714052;--adult-red:#9d294b;--adult-gold:#d9ad67;--adult-ink:#fff3f6;--adult-muted:#c9aeb7;color:var(--adult-ink);background:
radial-gradient(circle at 15% 0,#4a1427 0,transparent 31%),
radial-gradient(circle at 100% 20%,#3b1420 0,transparent 28%),
linear-gradient(180deg,#180d13 0%,#0d090b 100%);
border:1px solid #5d3140;border-radius:24px;padding:clamp(18px,3vw,38px);box-shadow:0 16px 44px #0007;position:relative;overflow:hidden}
.adult-page::before,.adult-page::after{content:"⛓ ⛓ ⛓ ⛓ ⛓";position:absolute;color:#8c4e61aa;font-size:21px;letter-spacing:9px;pointer-events:none;white-space:nowrap}
.adult-page::before{top:12px;right:-30px;transform:rotate(18deg)}
.adult-page::after{bottom:18px;left:-45px;transform:rotate(-13deg)}
.adult-page .page-head{position:relative;z-index:1;border-bottom:1px solid #603445;padding-bottom:24px;margin-bottom:24px}
.adult-page .page-head h1{color:#fff6f8;text-shadow:0 2px 16px #9d294b55}
.adult-page .page-head p{color:var(--adult-muted)}
.adult-page .eyebrow{color:#f0c6d0}
.adult-kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#e8b9c6;font-weight:900;margin:0 0 8px}
.adult-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(190px,.6fr);gap:28px;align-items:center;background:linear-gradient(135deg,#2d1420,#170d13 60%,#32111d);border:1px solid #7b4054;border-radius:20px;padding:30px;margin:10px 0 32px;box-shadow:inset 0 0 0 1px #0008,0 14px 28px #0006}
.adult-hero.compact{padding:24px 28px}
.adult-hero h2{font:800 clamp(30px,4vw,48px)/1.05 Georgia,serif;color:#fff4f7;max-width:760px;margin:0 0 14px}
.adult-hero p{color:#d9bec6;line-height:1.7;max-width:740px}
.adult-emblem{min-height:170px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px solid #8c4c60;border-radius:50%;background:radial-gradient(circle,#391521 0,#140a0f 66%);font:700 28px Georgia,serif;color:var(--adult-gold);box-shadow:inset 0 0 26px #000,0 0 0 8px #190d12}
.adult-emblem span{display:grid;place-items:center;width:78px;height:78px;border:2px solid #b25a72;border-radius:50%;color:#fff3f6;font:900 25px system-ui;box-shadow:0 0 20px #9d294b66}
.adult-button,.adult-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #b35e76;background:#7f2442;color:#fff!important;text-decoration:none;border-radius:9px;padding:10px 14px;font-weight:800;box-shadow:0 3px 0 #3c0d1b}
.adult-link{min-height:36px;font-size:12px;padding:8px 11px;background:#351622;border-color:#815063;box-shadow:none}
.adult-button:hover,.adult-link:hover{background:#a52c50}
.adult-section{position:relative;z-index:1;margin:34px 0}
.adult-section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:16px;border-bottom:1px solid #5e3443;padding-bottom:12px}
.adult-section-head h2{margin:0;color:#fff2f5;font-size:30px}
.adult-section-head>p{color:var(--adult-muted);max-width:520px;text-align:right;font-size:13px}
.adult-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.adult-tile{display:block;text-decoration:none;color:#fff2f5!important;background:linear-gradient(145deg,#25121b,#180d13);border:1px solid #714052;border-radius:15px;padding:20px;box-shadow:0 8px 18px #0005}
.adult-tile>span{font-size:34px;color:var(--adult-gold);display:block;margin-bottom:10px}
.adult-tile h3{font:800 24px Georgia,serif;margin:0 0 10px;color:#fff}
.adult-tile p{color:#cdb5bd;line-height:1.75;margin:0}
.adult-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.adult-event{display:grid;grid-template-columns:145px minmax(0,1fr);gap:16px;background:#1e1017;border:1px solid #613547;border-radius:13px;padding:16px}
.adult-date{border-right:1px solid #5d3442;padding-right:14px}
.adult-date strong{display:block;color:#ffeef3;font-size:14px}
.adult-date span{display:block;color:#d3a9b6;font-size:12px;margin-top:6px}
.adult-event h3{margin:0 0 7px;color:#fff;font-size:19px}
.adult-event p{color:#c7adb5;margin:0 0 10px;font-size:13px}
.adult-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.adult-product{display:grid;grid-template-columns:68px minmax(0,1fr);gap:15px;background:linear-gradient(145deg,#211119,#160c11);border:1px solid #684052;border-radius:15px;padding:18px;box-shadow:0 8px 18px #0005}
.adult-product-mark{width:62px;height:62px;display:grid;place-items:center;border-radius:50%;background:#371522;border:1px solid #8c4d62;color:#e2b875;font-size:29px}
.adult-price{color:#e7bc78!important;font-weight:900;font-size:15px;margin:0 0 4px!important}
.adult-product h3{margin:0 0 11px;color:#fff;font-size:19px;line-height:1.25}
.adult-product dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 11px;margin:0 0 12px;font-size:12px}
.adult-product dt{color:#e2b5c2;font-weight:900}.adult-product dd{margin:0;color:#d0bbc2;min-width:0;overflow-wrap:anywhere}
.adult-product p{color:#c4abb4;font-size:13px;line-height:1.65}
.adult-rules{background:#170d12;border:1px solid #6b3c4d;border-radius:18px;padding:22px}
.adult-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.adult-rule-grid article{background:#24121b;border:1px solid #5d3544;border-radius:13px;padding:17px}
.adult-rule-grid h3{color:#fff;margin:0 0 8px;font-size:20px}
.adult-rule-grid p{color:#ccb5bd;font-size:13px;line-height:1.65}
@media(max-width:800px){.adult-hero{grid-template-columns:1fr}.adult-emblem{min-height:130px;max-width:280px}.adult-products,.adult-events,.adult-grid,.adult-rule-grid{grid-template-columns:1fr}.adult-section-head{display:block}.adult-section-head>p{text-align:left;margin-top:8px}.adult-event{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:520px){.adult-page{padding:16px;border-radius:16px}.adult-hero{padding:21px 18px}.adult-event{grid-template-columns:1fr}.adult-date{border-right:0;border-bottom:1px solid #5d3442;padding:0 0 10px}.adult-product{grid-template-columns:1fr}.adult-product-mark{width:54px;height:54px}.adult-page::before,.adult-page::after{display:none}}

/* Trip pages */
.trip-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.trip-hub-card{min-height:360px;position:relative;overflow:hidden;border:2px solid var(--line);border-radius:22px;box-shadow:4px 5px 0 var(--line);text-decoration:none;background:var(--surface);display:flex;align-items:flex-end}.trip-hub-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.trip-hub-card::after{content:'';position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(20,28,23,.94))}.trip-hub-card>div{position:relative;z-index:2;color:#fff;padding:26px;width:100%}.trip-hub-card h2{font-size:34px;margin:10px 0 8px;color:#fff}.trip-hub-card p{max-width:520px;margin-bottom:12px}.trip-hub-card strong{display:inline-block;margin-top:5px}.trip-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:5px 9px;border:1.5px solid currentColor;border-radius:999px;font:900 10px/1 system-ui;letter-spacing:.09em}.trip-badge.calendar{color:#315d55;background:#dff5ee}.trip-badge.booked{color:#315d55;background:var(--green);border-color:var(--line)}
.trip-jump{position:sticky;top:78px;z-index:12;display:flex;gap:7px;overflow-x:auto;padding:9px 2px 14px;margin:-5px 0 20px;background:linear-gradient(var(--paper) 70%,transparent);scrollbar-width:none}.trip-jump::-webkit-scrollbar{display:none}.trip-jump a,.trip-jump button{flex:none;text-decoration:none;border:1.5px solid var(--line);border-radius:999px;padding:8px 12px;background:var(--surface);color:var(--ink);font-size:12px;font-weight:800;box-shadow:1px 2px 0 #374c3d26;cursor:pointer}.trip-jump button:hover{transform:translateY(-1px)}.trip-jump-spicy{background:#ffcf8a!important}.trip-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:24px;padding:26px;background:var(--teal);border:2px solid var(--line);border-radius:23px;box-shadow:4px 5px 0 var(--line);margin-bottom:27px}.trip-hero.road{background:var(--yellow)}.trip-hero-copy h2{font-size:clamp(28px,4vw,45px);margin:11px 0}.trip-hero-copy>p{max-width:700px}.trip-hero-image{margin:0;padding:10px;background:var(--surface);border:2px solid var(--line);border-radius:15px;box-shadow:2px 3px 0 var(--line);transform:rotate(1deg);align-self:stretch}.trip-hero-image img{display:block;width:100%;height:100%;max-height:390px;min-height:280px;object-fit:cover;border-radius:9px}.trip-hero-image figcaption{padding:9px 3px 1px;font-size:12px;color:var(--muted)}.trip-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0}.trip-facts>div{background:#fffdf5c9;border:1.5px solid var(--line);border-radius:12px;padding:12px}.trip-facts dt{font:900 10px system-ui;letter-spacing:.09em;text-transform:uppercase}.trip-facts dd{margin:5px 0 0;font-size:13px}.trip-section{scroll-margin-top:130px;margin:34px 0}.trip-notice{margin:0 0 28px}.trip-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.trip-calendar article{border:1.5px solid var(--line);background:var(--surface);border-radius:14px;padding:17px}.trip-calendar strong{display:block;margin:10px 0 3px}.trip-calendar h3{margin:0 0 7px}.trip-calendar p{font-size:13px;color:var(--muted);margin:0}.trip-days{display:grid;gap:12px}.trip-day{border:1.5px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;scroll-margin-top:135px}.trip-day[open]{box-shadow:2px 3px 0 #374c3d27}.trip-day summary{list-style:none;cursor:pointer;min-height:70px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--surface)}.trip-day summary::-webkit-details-marker{display:none}.trip-day[open] summary{background:var(--yellow);border-bottom:1px dashed var(--line)}.trip-day summary span,.trip-day summary strong{display:block}.trip-day summary span{font:900 10px system-ui;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.trip-day summary strong{font-size:17px;margin-top:3px}.trip-day summary>b:not(.trip-badge){font-size:23px}.trip-day[open] summary>b:not(.trip-badge){transform:rotate(45deg)}.trip-day-body{padding:18px}.trip-day-summary{font-weight:700;color:var(--muted)}.trip-stops{display:grid;margin:5px 0 17px}.trip-stop{display:grid;grid-template-columns:105px minmax(0,1fr);gap:15px;padding:14px 0;border-top:1px dashed var(--softline)}.trip-stop:first-child{border-top:0}.trip-stop time{font-weight:900;font-size:13px;color:#315d55}.trip-stop strong{display:block}.trip-stop p{margin:3px 0 0;color:var(--muted);font-size:13px}.trip-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.trip-photo{margin:0;background:var(--surface);border:1.5px solid var(--line);border-radius:15px;padding:9px;box-shadow:2px 3px 0 #374c3d25}.trip-photo:nth-child(2n){transform:rotate(.55deg)}.trip-photo:nth-child(2n+1){transform:rotate(-.45deg)}.trip-photo img{display:block;width:100%;height:260px;object-fit:cover;border-radius:9px}.trip-photo figcaption{padding:9px 4px 3px;font-size:12px}.trip-link-grid,.trip-hotel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.trip-link-grid article,.trip-hotel-grid article{border:1.5px solid var(--line);border-radius:14px;padding:17px;background:var(--surface)}.trip-link-grid article>span{font-size:28px}.trip-link-grid h3,.trip-hotel-grid h3{margin:5px 0 7px}.trip-link-grid p,.trip-hotel-grid p{font-size:13px;color:var(--muted)}.trip-hotel-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.trip-hotel-grid article>span{display:inline-block;background:var(--lilac);padding:4px 8px;border-radius:6px;font:900 10px system-ui;letter-spacing:.06em}.trip-route{display:flex;gap:8px;align-items:stretch;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:thin}.trip-route>div{flex:0 0 130px;display:flex;flex-direction:column;justify-content:center;min-height:90px;padding:12px;border:1.5px solid var(--line);border-radius:12px;background:var(--surface);text-align:center}.trip-route>div strong,.trip-route>div small{display:block}.trip-route>div small{margin-top:4px;color:var(--muted)}.trip-route>span{align-self:center;font-weight:900}.trip-credit{font-size:11px;color:var(--muted);line-height:1.7;margin:28px 0 0}.trip-credit a{color:inherit}
@media(max-width:900px){.trip-hero{grid-template-columns:1fr}.trip-hero-image img{min-height:210px}.trip-link-grid{grid-template-columns:1fr 1fr}.trip-hub-card{min-height:310px}}
@media(max-width:600px){.trip-hub-grid,.trip-calendar,.trip-photo-grid,.trip-link-grid,.trip-hotel-grid{grid-template-columns:1fr}.trip-hub-card{min-height:330px}.trip-jump{top:72px;margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.trip-hero{padding:18px;margin-left:-6px;margin-right:-6px}.trip-hero-image{transform:none}.trip-hero-image img{min-height:190px;max-height:260px}.trip-facts{grid-template-columns:1fr}.trip-section{margin:28px 0}.trip-day summary{min-height:64px;padding:13px}.trip-day-body{padding:14px}.trip-stop{grid-template-columns:78px minmax(0,1fr);gap:10px}.trip-stop time{font-size:12px}.trip-photo img{height:230px}.trip-route{margin-right:-18px;padding-right:18px}.trip-route>div{flex-basis:112px}.trip-day .actions .button{width:100%}}

.trip-view-tabs{display:flex;gap:9px;margin:4px 0 8px;position:relative;z-index:13}.trip-view-tabs button{min-height:45px;padding:9px 16px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-weight:900;box-shadow:2px 3px 0 #374c3d2d;cursor:pointer}.trip-view-tabs button[aria-selected="true"]{background:var(--yellow);box-shadow:3px 4px 0 var(--line)}.trip-view-tabs button[data-trip-view="spicy"][aria-selected="true"]{background:#ffb27a}.trip-day-badges{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.trip-badge.spicy{background:#ffb27a;color:#55230d;border-color:#7a2d12}.trip-spicy-pane{scroll-margin-top:130px;margin:22px 0 34px}.spicy-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:25px;border:2px solid #6f2b15;border-radius:22px;background:linear-gradient(135deg,#fff1df,#ffd1a4);box-shadow:4px 5px 0 #6f2b15}.spicy-hero h2{font-size:clamp(31px,5vw,48px);margin:10px 0}.spicy-hero p{margin:0;max-width:680px}.spicy-flames{font-size:clamp(38px,8vw,76px);letter-spacing:-8px;filter:drop-shadow(0 4px 0 #6f2b1530)}.spicy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:20px 0}.spicy-card{border:2px solid #7a2d12;border-radius:17px;background:#fff8ef;padding:19px;box-shadow:3px 4px 0 #7a2d1228}.spicy-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:7px}.spicy-card-top span{font:900 11px system-ui;letter-spacing:.06em;text-transform:uppercase;color:#7a2d12}.spicy-card-top strong{white-space:nowrap;letter-spacing:-2px}.spicy-card h3{font-size:24px;margin:4px 0 9px}.spicy-card p{font-size:13px;line-height:1.65}.spicy-location{font-weight:800;color:#6d3a25!important}.spicy-foot{padding:12px 2px}.trip-day:target{outline:3px solid #d48b45;outline-offset:3px}
@media(max-width:700px){.trip-view-tabs{position:sticky;top:72px;background:var(--paper);padding:8px 0;z-index:14}.trip-view-tabs+.trip-jump{top:126px}.trip-view-tabs button{flex:1;padding:8px 10px}.spicy-grid{grid-template-columns:1fr}.spicy-hero{grid-template-columns:1fr;padding:20px}.spicy-flames{font-size:50px}.trip-day-badges .trip-badge{font-size:9px}}

.trip-stop-rich{align-items:start}.trip-stop-main{min-width:0}.trip-stop-title a{display:inline-flex;gap:5px;align-items:baseline;color:var(--ink);text-decoration-thickness:1.5px;text-underline-offset:3px}.trip-stop-title a:hover{text-decoration-thickness:2.5px}.trip-stop-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:9px 0 3px}.trip-price{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--yellow);border:1.5px solid var(--line);font-size:11px;font-weight:900}.trip-workbook-note{background:#f6f0e2;border-left:4px solid #d4a85f;border-radius:7px;padding:9px 11px;margin-top:9px!important;color:var(--ink)!important}.trip-stop-actions{margin-top:11px}.trip-stop-actions .button{font-size:11px;padding:7px 10px}
