:root{--ink:#173f46;--paper:#f6f1e7;--accent:#ad4b32;--line:#c7cdc2;--sage:#cfddd0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'Avenir Next',Avenir,sans-serif}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}header,main,footer{max-width:1200px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:28px 36px;border-bottom:1px solid var(--line);gap:20px}header>a:last-child{font-size:14px}.brand{font-size:27px;letter-spacing:-1px;font-weight:800;text-decoration:none}.brand span{display:block;font-size:11px;letter-spacing:3px;text-transform:uppercase}main{padding:0 36px}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;padding:85px 0}.eyebrow{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:600}h1,h2,.day strong{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(43px,5.5vw,76px);line-height:1.04;letter-spacing:-3px;margin:25px 0}h1 em{color:var(--accent);font-weight:400}.intro{max-width:510px;font-size:19px}.availability{font-size:13px;margin:28px 0 20px}.availability>span{display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:50%;margin-right:7px}.button{display:inline-flex;align-items:center;gap:22px;border:1px solid var(--ink);border-radius:40px;padding:12px 22px;text-decoration:none;font-size:15px}.button:hover{background:var(--ink);color:var(--paper)}.day{align-self:center;padding:30px 34px;background:var(--sage);border-radius:100px 100px 8px 8px}.day>.eyebrow{text-align:center;padding-top:20px}.day ol{padding:8px 0;margin:0;list-style:none}.day li{padding:16px 0;border-bottom:1px solid #aabdaf}.day li:last-child{border:0}.day li span{display:block;font-size:12px}.day strong{font-size:29px}.day>p:last-child{font-size:13px}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;border-top:1px solid var(--line);padding:42px 0 65px}.details article>span{font-size:12px;color:var(--accent)}h2{font-size:29px;line-height:1.18}.details p{font-size:15px}.help{padding:40px 0;border-top:1px solid var(--line)}.help nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}.help a{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);text-decoration:none}.help a:hover{color:var(--accent)}footer{padding:28px 36px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:12px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:10px;z-index:2}.skip:focus{top:10px}@media(max-width:720px){header,footer{padding:23px}main{padding:0 23px}.hero{grid-template-columns:1fr;gap:35px;padding:45px 0}.intro{font-size:17px}h1{letter-spacing:-1.5px}.day{padding:26px 30px;border-radius:70px 70px 8px 8px}.details{grid-template-columns:1fr;gap:15px;padding-bottom:35px}.details h2{margin:10px 0}.help nav{grid-template-columns:1fr}.help{padding-top:24px}footer{display:block}.availability{max-width:280px}}

/* Portal identity, scoped to the application landing header. */
.brand--portal{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;letter-spacing:normal}
.brand--portal .brand__mark{width:44px;height:44px;flex-shrink:0;color:var(--ink)}
.brand--portal .brand__name{display:inline;font-family:"DM Sans",sans-serif;font-size:19px;font-weight:700;letter-spacing:-.045em;text-transform:uppercase;white-space:nowrap}
.brand--portal .brand__name em{margin-left:2px;color:#e47a5f;font-family:"Newsreader",serif;font-size:21px;font-weight:500;text-transform:none}
@media(max-width:720px){.brand--portal{gap:8px}.brand--portal .brand__mark{width:38px;height:38px}.brand--portal .brand__name{font-size:17px}.brand--portal .brand__name em{font-size:19px}header:has(.brand--portal){flex-wrap:wrap}}
