/* Guanacaste This Week — site styles. Brand: teal #0a6270, coral #f07054, navy #103a4c, cream #fbf6ee, sand #f4e7d3, blue #2381c1 */
:root{--teal:#0a6270;--coral:#f07054;--coral-d:#d9553a;--navy:#103a4c;--blue:#2381c1;--cream:#fbf6ee;--sand:#f4e7d3;--ink:#1d2a2e;--muted:#5f7177;--line:#e8dcc8;--r:16px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
img{max-width:100%;height:auto}
a{color:var(--teal)}
.wrap{max-width:1040px;margin:0 auto;padding:0 18px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:6px 10px;z-index:9}
/* top bar (also injected on issue pages) */
.gtw-bar{background:var(--navy);color:#fff;font:600 15px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.gtw-bar .in{max-width:1040px;margin:0 auto;padding:10px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gtw-bar a{color:#fff;text-decoration:none}
.gtw-brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:16px;letter-spacing:.1px;margin-right:auto}
.gtw-brand img{width:36px;height:36px;border-radius:50%;display:block}
.gtw-brand span b{color:#ffb39f;font-weight:800}
.gtw-nav{display:flex;gap:16px;align-items:center;font-size:14.5px}
.gtw-nav a{opacity:.92}.gtw-nav a:hover,.gtw-nav a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:4px}
.gtw-nav a.gtw-cta{background:var(--coral);border-radius:999px;padding:7px 14px;opacity:1}
.gtw-nav a.gtw-cta:hover{background:var(--coral-d);text-decoration:none}
@media (max-width:560px){.gtw-bar .in{padding:9px 14px;gap:8px}.gtw-nav{width:100%;justify-content:space-between;gap:10px;font-size:14px}.gtw-brand{font-size:15px}}
/* hero */
.hhero{background:linear-gradient(180deg,#fdebd8 0%,var(--cream) 100%);border-bottom:6px solid var(--coral)}
.hhero .wrap{display:grid;gap:18px;padding-top:28px;padding-bottom:30px;align-items:center}
.hhero-logo{width:96px;height:96px;border-radius:50%;box-shadow:0 6px 22px rgba(16,58,76,.18);display:block}
.hhero h1{margin:0;font-size:34px;line-height:1.08;color:var(--teal);font-weight:850;letter-spacing:-.4px}
.hhero h1 span{color:var(--coral)}
.hhero .pitch{font-size:18px;line-height:1.45;color:var(--navy);margin:10px 0 0;max-width:36em}
.hhero .towns{margin:8px 0 0;color:var(--coral-d);font-weight:700;font-size:14px;letter-spacing:.2px}
.hhero .towns-more{margin:4px 0 0;color:var(--navy);font-size:13.5px;line-height:1.45;opacity:.85}
@media (min-width:820px){.hhero .wrap{grid-template-columns:170px 1fr;padding-top:44px;padding-bottom:44px}.hhero-logo{width:170px;height:170px}.hhero h1{font-size:46px}}
/* sign-up */
.signup{margin-top:18px;max-width:520px}
.signup-row{display:flex;gap:8px;flex-wrap:wrap}
.signup input[type=email]{flex:1 1 220px;min-width:0;font:inherit;font-size:17px;padding:13px 14px;border:2px solid #cdbfa8;border-radius:12px;background:#fff;color:var(--ink)}
.signup input[type=email]:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(10,98,112,.18)}
.btn{display:inline-block;font:inherit;font-weight:800;font-size:17px;background:var(--coral);color:#fff;border:0;border-radius:12px;padding:13px 20px;cursor:pointer;text-decoration:none;text-align:center}
.btn:hover{background:var(--coral-d)}
.btn.alt{background:var(--teal)}.btn.alt:hover{background:#084f5a}
.btn.ghost{background:transparent;color:var(--teal);border:2px solid var(--teal)}
.signup button{flex:0 0 auto}
@media (max-width:480px){.signup button{flex:1 1 100%}}
.fine{font-size:13.5px;color:var(--muted);margin:8px 0 0}
.fine a{color:var(--muted)}
.formkit-alert{list-style:none;margin:0 0 8px;padding:0}
.formkit-alert:empty{display:none}
.formkit-alert-error li{background:#fde9e3;color:#8f2f19;border-radius:10px;padding:8px 12px;font-size:14px}
.formkit-alert-success{background:#e6f4ef;color:#1f5d52;border-radius:12px;padding:12px 14px;font-weight:700;list-style:none;margin:0}
.signup[data-active] button,.signup button[data-active]{opacity:.7}
.dark .fine,.dark .fine a{color:#d5e6ea}
/* sections */
section.block{padding:34px 0}
section.block.tint{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
h2{font-size:25px;line-height:1.2;color:var(--navy);margin:0 0 16px;letter-spacing:-.2px}
h2 small{display:block;font-size:12.5px;letter-spacing:1.3px;text-transform:uppercase;color:var(--coral-d);margin-bottom:3px;font-weight:800}
.sgrid{display:grid;gap:14px}
@media (min-width:640px){.sg2{grid-template-columns:1fr 1fr}.sg4{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.sg4{grid-template-columns:repeat(4,1fr)}}
.wcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px}
.tint .wcard{background:var(--cream)}
.wcard h3{margin:0 0 4px;font-size:17px;color:var(--teal)}
.wcard p{margin:0;font-size:15px;color:var(--muted)}
.wcard .ico{font-size:26px;line-height:1;display:block;margin-bottom:8px}
.see-all{margin:14px 0 0}
.promise{margin:16px 0 0;font-size:15px;color:var(--navy)}
/* issue cards */
.issue-card{display:grid;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 18px rgba(16,58,76,.07)}
.issue-card:hover{box-shadow:0 6px 24px rgba(16,58,76,.14)}
.issue-card img{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;background:var(--sand)}
.issue-card .body{padding:16px 18px 18px}
.kicker{font-size:12.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--coral-d)}
.issue-card h3{margin:3px 0 6px;font-size:21px;line-height:1.2;color:var(--navy)}
.issue-card p{margin:0 0 8px;color:var(--ink)}
.issue-card ul{margin:0 0 12px;padding:0;list-style:none;font-size:15px;color:var(--muted)}
.issue-card li{margin:3px 0}
.more{font-weight:800;color:var(--teal)}
@media (min-width:820px){.issue-card.wide{grid-template-columns:1.1fr 1fr;align-items:center}.issue-card.wide .body{padding:22px 26px}}
.archive{list-style:none;margin:0;padding:0;display:grid;gap:14px}
@media (min-width:720px){.archive{grid-template-columns:1fr 1fr}}
/* fb + cta bands */
.band{background:var(--teal);color:#fff;border-radius:20px;padding:22px 20px;display:grid;gap:12px;align-items:center}
.band h2{color:#fff;margin:0}.band h2 small{color:#ffcdbf}
.band p{margin:0;color:#d8eef0}
.band .btn{background:#fff;color:var(--teal)}.band .btn:hover{background:var(--sand)}
.band.navy{background:var(--navy)}
@media (min-width:760px){.band{grid-template-columns:1fr auto;padding:26px 30px}}
.fb-ico{display:inline-block;width:20px;height:20px;vertical-align:-4px;margin-right:6px}
/* prose pages */
.page-head{background:var(--sand);border-bottom:6px solid var(--coral)}
.page-head .wrap{padding-top:28px;padding-bottom:26px}
.page-head h1{margin:0;color:var(--teal);font-size:32px;line-height:1.1}
.page-head p{margin:8px 0 0;color:var(--navy);font-size:17px;max-width:40em}
.prose{max-width:720px}
.prose h2{margin-top:26px;font-size:21px}
.prose p,.prose li{font-size:16.5px}
.prose ul{padding-left:20px}
/* footer */
.gtw-foot{background:var(--navy);color:#cfe0e3;font:14px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;margin-top:0}
.gtw-foot .in{max-width:1040px;margin:0 auto;padding:30px 18px 34px;display:grid;gap:18px}
.gtw-foot a{color:#fff}
.gtw-foot .fbrand{display:flex;gap:12px;align-items:center}
.gtw-foot .fbrand img{width:52px;height:52px;border-radius:50%}
.gtw-foot .fbrand b{display:block;color:#fff;font-size:16px}
.gtw-foot nav{display:flex;flex-wrap:wrap;gap:8px 18px}
.gtw-foot small{display:block;opacity:.8;font-size:12.5px}
@media (min-width:760px){.gtw-foot .in{grid-template-columns:1.2fr 1fr 1fr}}
/* issue page extras (injected around the email-style web version) */
.gtw-issue-sub{background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.gtw-issue-sub .in{max-width:600px;margin:0 auto;padding:24px 18px 28px;text-align:center}
.gtw-issue-sub h2{margin:0 0 6px;font-size:22px}
.gtw-issue-sub p{margin:0 0 6px;color:var(--muted)}
.gtw-issue-sub .signup{margin:12px auto 0;text-align:left}
.gtw-crumb{max-width:600px;margin:0 auto;padding:12px 16px;font:600 14px/1.3 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.gtw-crumb a{color:#fff;text-decoration:none;opacity:.9}.gtw-crumb a:hover{text-decoration:underline}
/* 404 */
.nf{text-align:center;padding:60px 0}
.wrap.nf{padding:60px 18px}
.nf img{width:120px;height:120px;border-radius:50%}
.nf h1{color:var(--teal);font-size:30px;margin:14px 0 6px}
/* alignment pass (Oct 27 2026): checked at 390px and 1280px */
.archive.solo{grid-template-columns:1fr}
.wrap.prose{max-width:1040px}.wrap.prose>*{max-width:720px}
@media (min-width:760px){.gtw-foot .in{align-items:start}.gtw-foot nav{display:grid;grid-template-columns:repeat(3,max-content);gap:6px 22px;align-content:start}}
@media (max-width:819px){.hhero .wrap{justify-items:center;text-align:center}.hhero .pitch{margin-left:auto;margin-right:auto}.hhero .signup{margin-left:auto;margin-right:auto;text-align:left}.hhero .fine{text-align:center}}
@media (max-width:759px){.band .btn{display:block;width:100%}}
/* mobile title pass (Oct 27 2026): checked at 360/390/414px. Page and section titles, card titles and their
   intro lines are centred; long prose and lists stay left-aligned with the wrap. */
h1,h2,h3{overflow-wrap:break-word}
.nf .fine,.gtw-issue-sub .fine{text-align:center}
@media (max-width:759px){
h1,h2,h3{text-wrap:balance}
.page-head .wrap{text-align:center}.page-head p{margin-left:auto;margin-right:auto}
section.block>.wrap>h2,.prose h2{text-align:center}
.promise,.see-all{text-align:center}
.wcard{text-align:center}
.issue-card .body{text-align:center}
.band{text-align:center}.band .signup{margin-left:auto;margin-right:auto;text-align:left}.band .fine{text-align:center}
}
