:root{--c:#0a7f8c;--a:#ff7a45;--t:#14213d}*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--t)}
header{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fff;position:sticky;top:0;z-index:5;box-shadow:0 1px 6px #0001;flex-wrap:wrap}
.logo{font-weight:800;font-size:1.3rem;color:var(--c);text-decoration:none}.logo span{color:var(--a)}nav{display:flex;gap:14px;overflow-x:auto;flex:1 1 100%;order:3}nav a{color:var(--t);text-decoration:none;white-space:nowrap;font-size:.95rem}
.lang{margin-left:auto;border:1px solid var(--c);border-radius:20px;padding:2px 12px;color:var(--c);text-decoration:none;font-weight:700}
main{max-width:1100px;margin:auto;padding:16px}h1{line-height:1.2}
.hero{background-size:cover;background-position:center;border-radius:14px;min-height:360px;display:flex;align-items:flex-end}.hero div{background:linear-gradient(transparent,#000c);color:#fff;padding:24px;border-radius:0 0 14px 14px;width:100%}.hero h1{font-size:1.8rem;margin:0 0 8px}
.btn{display:inline-block;padding:11px 16px;border-radius:10px;border:2px solid var(--c);color:var(--c);text-decoration:none;font-weight:700;margin:4px 4px 4px 0}.btn.primary{background:var(--a);border-color:var(--a);color:#fff}.btn[disabled]{opacity:.5;cursor:not-allowed;background:#fff;font:inherit;font-weight:700}
.chips{display:flex;gap:8px;overflow-x:auto;padding:14px 0}.chip{background:#e6f4f5;color:var(--c);padding:6px 12px;border-radius:20px;text-decoration:none;white-space:nowrap}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.card{border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0002;text-decoration:none;color:inherit;background:#fff}.card img{width:100%;height:180px;object-fit:cover;display:block}.card div{padding:10px 14px}.card h3{font-size:1.05rem;margin:0 0 4px}
.cover{width:100%;height:auto;aspect-ratio:16/9;max-height:420px;object-fit:cover;border-radius:12px}.credit{display:block;color:#666;font-size:.75rem}.price{font-size:1.2rem}.price b{color:var(--a)}.book{display:flex;flex-wrap:wrap}
.note{color:#555;font-size:.85rem}details{border-bottom:1px solid #ddd;padding:10px 0}summary{font-weight:700;cursor:pointer}
footer{background:#f3f6f8;padding:20px 16px 30px;font-size:.85rem;text-align:center}
@media(min-width:800px){nav{order:0;flex:1 1 auto}.hero{min-height:460px}.hero h1{font-size:2.6rem}}
.logo span{margin-left:.25em}
.buckets{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:24px}.bucket{position:relative;display:block;border-radius:12px;overflow:hidden;color:#fff;text-decoration:none;min-height:150px;box-shadow:0 2px 10px #0002}.bucket img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.bucket::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#000b)}.bucket h3,.bucket .num{position:relative;z-index:1}.bucket h3{position:absolute;bottom:0;left:0;right:0;margin:0;padding:12px 14px;font-size:1.1rem}.bucket .num{display:inline-block;margin:10px;background:var(--a);border-radius:50%;width:32px;height:32px;line-height:32px;text-align:center;font-weight:800}
.hero{background-color:#14506b}.bucket{background-color:#14506b}
.ph{display:block;width:100%;height:180px;background:linear-gradient(135deg,#bfe3e6,#e6f4f5)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px;padding:0;margin:4px 0 12px;font-size:.85rem;color:#555}.crumbs li+li::before{content:"›";margin-right:4px}.crumbs a{color:var(--c)}
.facts{display:grid;grid-template-columns:1fr;gap:2px;margin:0 0 12px;padding:12px 14px;background:#f3f6f8;border-radius:10px}.facts dt{font-weight:700;font-size:.85rem;color:#3d4a5c;text-transform:uppercase;letter-spacing:.02em}.facts dd{margin:0 0 10px}.facts dd:last-child{margin-bottom:0}
.disclosure{font-size:.8rem;color:#555;margin:2px 0 12px}
/* balanced home tiles: 1 column on phones, 2x2 from tablet up */
@media(min-width:600px){.buckets{grid-template-columns:repeat(2,1fr)}.bucket{min-height:180px}}
/* quick facts: stacked on phones, fixed label column from tablet up */
@media(min-width:600px){.facts{grid-template-columns:13rem 1fr;gap:8px 16px}.facts dd{margin:0}}
/* links in credits, disclosures, notes and footer: brand teal (darkened for WCAG AA, 5.6:1 on footer bg), visible hover/focus */
:root{--cd:#086d78}
.credit a,.disclosure a,.note a,footer a,main p a,main li a,.crumbs a{color:var(--cd);text-decoration:underline;text-underline-offset:2px}
.credit a:hover,.disclosure a:hover,.note a:hover,footer a:hover,main p a:hover,main li a:hover,.crumbs a:hover{color:var(--t);text-decoration-thickness:2px}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--t);outline-offset:2px;border-radius:4px}
.credit,.disclosure,.note{color:#555}
/* spec 3-5: lead paragraphs, Q&A, facts lists, hub tables */
.lead{font-size:1.1rem}.byline{margin-top:-6px}code{font-size:.9em;background:#f3f6f8;padding:0 3px;border-radius:3px}
.qa h3{font-size:1rem;margin:16px 0 4px}.facts dd ul{margin:0;padding-left:1.1em}
.tablewrap{overflow-x:auto;margin:0 0 12px}.tablewrap table{border-collapse:collapse;min-width:720px;font-size:.9rem}.tablewrap th,.tablewrap td{border-bottom:1px solid #ddd;padding:8px;text-align:left;vertical-align:top}.tablewrap caption{text-align:left;font-weight:700;margin-bottom:6px}
.hubhero{width:100%;height:auto;aspect-ratio:16/9;max-height:420px;object-fit:cover;border-radius:12px}
