body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:var(--navy-800);text-decoration:none}
a:hover{color:var(--navy-700)}
img{display:block;max-width:100%}
button{font-family:inherit}
[hidden]{display:none !important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wrap{max-width:var(--container-width);margin:0 auto;padding:0 var(--container-padding)}
.ico{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ico-sm{width:18px;height:18px}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 24px;border-radius:var(--r-sm);font-weight:600;font-size:15px;letter-spacing:.01em;border:1.5px solid transparent;cursor:pointer;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;white-space:nowrap}
.btn-primary{background:var(--navy-800);color:var(--white)}
.btn-primary:hover{background:var(--navy-700);color:var(--white)}
.btn-secondary{background:var(--white);color:var(--navy-800);border-color:var(--line-strong)}
.btn-secondary:hover{border-color:var(--navy-800);color:var(--navy-800)}
.btn-light{background:var(--white);color:var(--navy-800)}
.btn-light:hover{background:var(--gold-tint);color:var(--navy-900)}
.link-arrow{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14.5px;color:var(--navy-800)}
.link-arrow .ico{width:18px;height:18px;transition:transform .18s}
.link-arrow:hover .ico{transform:translateX(3px)}

/* Sections */
.section{padding:var(--space-section) 0}
.section-alt{background:var(--surface)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}
.sec-head h2{font-family:var(--serif);font-weight:600;font-size:34px;line-height:1.15;color:var(--navy-900);margin:0}
.sec-head p{margin:6px 0 0;color:var(--muted);font-size:15px}

.skip-link{position:absolute;left:16px;top:-80px;z-index:100;background:var(--white);padding:12px 20px;border:2px solid var(--navy-800)}
.skip-link:focus{top:12px}
.logo-image{max-height:44px;width:auto;max-width:170px;object-fit:contain}
.content-page{min-height:45vh}
.content-page h1,.woo-page h1{font-family:var(--serif);color:var(--navy-900);font-weight:600;font-size:clamp(28px,4vw,40px);line-height:1.2}
.content-page p{max-width:75ch}
button:disabled,[aria-disabled="true"]{cursor:wait;opacity:.65}
/* Woo price HTML includes screen-reader text even when block styles are omitted. */
.screen-reader-text:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.content-page,.woo-page{padding-inline:var(--container-padding)}
