/* Hawaii Hacks v10: shared guide and accessibility layer */
:root{--muted:#526773;--coral-ink:#aa3d25}
body{line-height:1.55}
a{color:var(--navy)}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #aa3d25!important;outline-offset:4px!important}
[hidden]{display:none!important}
.brand::before{content:"";background:transparent url('/assets/mark.svg') center/contain no-repeat;box-shadow:none;width:40px;height:40px;flex:none}
.top{max-width:1200px;flex-wrap:wrap;gap:12px 24px;padding:22px 28px}
.site-nav{flex-wrap:wrap;white-space:normal;overflow:visible;max-width:none;gap:2px}
.site-nav a{font-size:13px}
.site-nav a[aria-current=page]{background:#f8e8e0}
main{max-width:1200px;padding-left:28px;padding-right:28px}
.eyebrow{color:var(--coral-ink);line-height:1.5}
.resultcard .eyebrow,.next-step .eyebrow{color:#ffac96}
h1{line-height:1.06}
.cta{display:inline-flex;gap:14px;align-items:center;justify-content:space-between;background:var(--coral);color:var(--navy2);font-size:14px;line-height:1.4;padding:14px 18px;border-radius:8px;text-decoration:none;font-weight:850;min-height:48px}
.cta:hover{background:#ff9277}
.cta.alt{color:#fff}
.micro,.sources,.disclosure{color:#526773;line-height:1.6;font-size:12px}
.resultcard .disclosure{color:#ccdde8}
.resultcard .breakdown span,.resultcard .delta{color:#d7e6ee}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-size:12px;margin:12px 0 30px}
.breadcrumbs a{text-underline-offset:3px}
.guide-hero{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:48px;padding:18px 0 42px}
.guide-hero h1{font-size:clamp(36px,4.6vw,62px);letter-spacing:-.045em;margin:14px 0 20px}
.dek{color:var(--muted);font-size:19px;line-height:1.6;max-width:650px}
.reviewed{font-size:12px;color:var(--muted);margin:22px 0}
.guide-photo{position:relative;align-self:stretch;min-height:320px;border-radius:18px;overflow:hidden;background:var(--navy)}
.guide-photo img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}
.photo-label{position:absolute;bottom:18px;left:18px;right:18px;max-width:max-content;border-radius:6px;background:var(--sand);color:var(--navy);font-weight:800;font-size:13px;padding:9px 14px}
.answer-box{padding:28px 32px;background:#fff;border:1px solid #e0e5e6;border-left:5px solid var(--coral);border-radius:8px;margin-bottom:50px}
.answer-box p{font-size:19px;line-height:1.7;max-width:950px;margin:10px 0 0}
.reading-layout{display:grid;grid-template-columns:minmax(0,740px) minmax(0,280px);justify-content:space-between;gap:64px}
.guide-copy{min-width:0}
.guide-copy section{margin:0 0 44px;scroll-margin-top:20px}
.guide-copy h2{font-size:28px;line-height:1.2;letter-spacing:-.025em;margin:0 0 20px}
.guide-copy p,.guide-copy li{font-size:16px;line-height:1.8;color:#304e60}
.guide-copy p{margin:16px 0}
.guide-copy a{text-underline-offset:3px}
.guide-copy ul{padding-left:22px}
.guide-copy li{padding-left:3px;margin:10px 0}
.table-scroll{overflow-x:auto;max-width:100%;border:1px solid #d6e0e4;border-radius:10px;background:#fff}
table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.65;text-align:left}
caption{text-align:left;padding:16px;background:#f0eee8;font-size:12px;font-weight:700;color:#405c6b}
th,td{padding:16px;vertical-align:top;border-bottom:1px solid #e1e7e9}
thead th{background:var(--navy);color:#fff;font-weight:750}
tbody th{font-weight:750;min-width:130px}
tbody td{min-width:140px}
tbody tr:last-child>*{border-bottom:0}
.guide-aside{align-self:start;position:sticky;top:24px}
.aside-box{background:var(--navy2);color:#fff;padding:26px;border-radius:12px}
.aside-box .eyebrow{color:#ffad98}
.aside-box h2{color:#fff;font-size:24px;margin:10px 0 16px;line-height:1.2}
.aside-box p{font-size:14px;color:#cfdee6}
.aside-box a{display:block;color:#fff;font-size:14px;font-weight:700;padding:14px 0;border-top:1px solid #436176;text-underline-offset:4px;min-height:44px}
.on-this-page{padding:26px 4px;font-size:13px}
.on-this-page strong{display:block;margin-bottom:10px}
.on-this-page a{display:block;padding:9px 0;line-height:1.5;min-height:44px}
.source-notes{border-top:1px solid #cad7df;padding-top:28px}
.source-notes h2{font-size:22px}
.source-notes p,.source-notes li{font-size:13px;line-height:1.7}
.source-notes a{overflow-wrap:anywhere}
.guide-copy details{padding:18px 0;margin:0;border-bottom:1px solid #cad7df}
.guide-copy summary{font-size:16px;line-height:1.6;min-height:44px;padding:6px 0}
.next-step{background:var(--navy2);border-radius:14px;color:#fff;padding:34px;display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:28px 0 70px}
.next-step>div{flex:1 1 460px}
.next-step h2{color:#fff;font-size:28px;margin:10px 0}
.next-step p{color:#d6e3eb;font-size:14px;max-width:650px}
.next-step .cta{flex:none}
.related{padding-top:10px;margin-top:42px}
.section-heading{margin-bottom:24px}
.section-heading h2{margin:8px 0 12px}
.section-heading p{color:var(--muted)}
.guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.guide-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d8e1e6;border-top:3px solid var(--coral);border-radius:5px 5px 12px 12px;text-decoration:none;padding:25px;transition:transform .15s ease,box-shadow .15s ease}
.guide-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #0d3e6110}
.guide-card h3{font-size:23px;line-height:1.2;letter-spacing:-.02em;margin:14px 0}
.guide-card p{color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 24px}
.card-action{margin-top:auto;display:flex;justify-content:space-between;gap:16px;color:var(--navy);font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.text-link{display:inline-flex;min-height:48px;align-items:center;margin:20px 0;font-weight:800;text-underline-offset:4px}
.hub-hero{padding:46px 0 42px;max-width:920px}
.hub-hero h1{font-size:clamp(38px,5.6vw,70px);line-height:1.07;letter-spacing:-.05em}
.hub-hero p{font-size:20px;max-width:700px;color:var(--muted)}
.category-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.category-nav a{border:1px solid #b7c7d2;min-height:44px;border-radius:30px;padding:9px 18px;text-decoration:none;font-size:14px;font-weight:750;background:#fff}
.guide-group{margin:24px 0 64px;scroll-margin-top:24px}
.home-guides{margin-top:10px}
footer{padding:36px 28px;color:#526773}
.footer-inner{max-width:1144px;margin:auto}
.footer-brand{font-size:20px;font-weight:900;text-decoration:none}
footer nav a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
footer p{max-width:850px;font-size:12px;line-height:1.7}
.proofgrid span{font-size:14px;line-height:1.6}
.photoherotext .eyebrow{color:#ffb49f}
.resultcard .hack span{color:var(--coral-ink)}
.proofgrid b,.trustbar b{color:var(--coral-ink)}
@media(max-width:960px){.reading-layout{gap:28px;grid-template-columns:minmax(0,1fr) 240px}.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-hero{gap:28px}.top{align-items:flex-start}.site-nav{justify-content:flex-start}}
@media(max-width:760px){
 main{padding:12px 18px 48px}.top{display:block;padding:18px}.brand{width:max-content}.site-nav{margin-top:16px;gap:0 2px;max-width:none}.site-nav a{font-size:12px;padding:8px 10px}.site-nav a:first-child{padding-left:10px}
 .guide-hero{grid-template-columns:1fr;gap:24px;padding:0 0 28px}.guide-hero h1{font-size:40px}.guide-photo{min-height:210px}.dek{font-size:17px}.breadcrumbs{margin:8px 0 26px}.reviewed{font-size:12px}
 .answer-box{padding:22px;margin-bottom:34px}.answer-box p{font-size:17px}.reading-layout{display:flex;flex-direction:column;gap:12px}.guide-copy{width:100%}.guide-copy h2{font-size:25px}.guide-copy section{margin-bottom:34px}.guide-aside{position:static;width:100%;display:block}.on-this-page{display:none}
 th,td{padding:13px}.next-step{padding:24px;margin:28px 0 42px;gap:12px}.next-step h2{font-size:25px}.next-step>div{flex-basis:100%}.next-step .cta{max-width:100%}.guide-cards{grid-template-columns:1fr}.guide-card{padding:24px}.hub-hero{padding-top:24px}.hub-hero h1{font-size:44px}.hub-hero p{font-size:18px}.guide-group{margin-bottom:44px}.related{margin-top:34px}footer{padding:28px 18px}
 .hero h1{font-size:42px;overflow-wrap:anywhere}.big{font-size:clamp(34px,10vw,48px);overflow-wrap:anywhere}.breakdown div{gap:14px}.card{min-width:0}.calbtn,.official{min-height:44px}.toolbody .eyebrow{color:var(--coral-ink)}
}
@media print{.site-nav,.guide-aside,.next-step,.related,footer{display:none}.reading-layout{display:block}.guide-photo{display:none}.guide-hero{display:block}.guide-copy{max-width:none}a{color:#000}details p{display:block}}

/* Legible coral text on light surfaces; retain bright coral for fills. */
h1 em{color:#b1462b}.photoherotext h1 em{color:#ffad98}.hack span{color:var(--coral-ink)}.choice:focus-within{outline:3px solid #aa3d25;outline-offset:3px}
