:root{--ink:#0e1f2b;--paper:#f6f1e4;--card:#fffdf6;--sun:#ffc72c;--red:#b72a14;--mute:#46545f;--link:#0a4a86}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;padding-bottom:84px}
a{color:var(--link)}img,svg{max-width:100%}
.wrap{max-width:62rem;margin:0 auto;padding:0 1rem}
.top{background:var(--ink);color:var(--paper)}
.top .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;padding-top:.7rem;padding-bottom:.7rem}
.logo{display:flex;align-items:center;gap:.5rem;color:var(--paper);text-decoration:none;font-weight:900;font-size:1.15rem;letter-spacing:-.01em}
.logo svg{width:34px;height:34px}
.nav{display:flex;gap:1rem;flex:1;font-weight:700}.nav a{color:var(--paper);text-decoration:none;border-bottom:2px solid transparent}.nav a:hover{border-color:var(--sun)}
.call{display:inline-block;background:var(--sun);color:var(--ink)!important;text-decoration:none;font-weight:900;padding:.55rem .9rem;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--paper);border-radius:4px;white-space:nowrap}
.hero{padding:2rem 0 1.5rem;border-bottom:3px solid var(--ink);background:linear-gradient(180deg,var(--paper),#efe7d2)}
.eyebrow{display:inline-block;background:var(--ink);color:var(--sun);font:800 .8rem/1 ui-monospace,Menlo,monospace;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .6rem;transform:rotate(-1.5deg)}
h1{font-size:clamp(2rem,7.2vw,3.5rem);line-height:1.05;letter-spacing:-.03em;margin:.8rem 0 .6rem;font-weight:900}
h2{font-size:clamp(1.45rem,4.5vw,2rem);line-height:1.15;margin:2.2rem 0 .7rem;letter-spacing:-.02em}
h3{margin:1.4rem 0 .4rem;font-size:1.15rem}
.lead{font-size:1.2rem;max-width:40rem}
.bigcall{display:block;margin:1.2rem 0 .3rem;background:var(--sun);color:var(--ink)!important;text-decoration:none;border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:1rem 1.1rem;border-radius:6px;max-width:30rem}
.bigcall small{display:block;font:800 .85rem ui-monospace,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase}
.bigcall b{display:block;font-size:clamp(2rem,9vw,3rem);line-height:1.1;letter-spacing:-.02em}
.sub{color:var(--mute);font-size:.95rem;margin:.6rem 0 0}
.panel{background:var(--card);border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);border-radius:6px;padding:1rem 1.1rem;margin:1.2rem 0}
.rate-flag{display:inline-block;background:var(--ink);color:var(--paper);padding:.15rem .5rem;border-radius:3px;font:800 .78rem ui-monospace,Menlo,monospace;letter-spacing:.05em;text-transform:uppercase}
.pricebig{font:900 clamp(2.4rem,10vw,4rem)/1 ui-monospace,Menlo,monospace;letter-spacing:-.04em;color:var(--red)}
.grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));margin:1rem 0}
.tile{display:block;background:var(--card);border:2px solid var(--ink);border-radius:6px;padding:.8rem .9rem;text-decoration:none;color:var(--ink);box-shadow:3px 3px 0 var(--ink)}
.tile:hover{background:#fff3c2}.tile b{display:block}.tile span{color:var(--mute);font-size:.92rem}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;padding:0;list-style:none;margin:.6rem 0}
.chips a{display:inline-block;background:var(--card);border:2px solid var(--ink);border-radius:999px;padding:.25rem .75rem;text-decoration:none;color:var(--ink);font-weight:600;font-size:.95rem}
.chips a:hover{background:var(--sun)}
.steps{counter-reset:s;list-style:none;padding:0}.steps li{counter-increment:s;position:relative;padding:.2rem 0 .6rem 3rem}
.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:2.1rem;height:2.1rem;background:var(--ink);color:var(--sun);border-radius:50%;display:grid;place-items:center;font-weight:900}
table.rates{width:100%;border-collapse:collapse;background:var(--card);border:3px solid var(--ink);margin:.6rem 0}
table.rates th{background:var(--ink);color:var(--paper);text-align:left;padding:.6rem .7rem;font-size:.9rem}
table.rates td{padding:.65rem .7rem;border-top:1px dashed #8a8372;vertical-align:top}
table.rates td.p{font:900 1.3rem/1.2 ui-monospace,Menlo,monospace;white-space:nowrap;color:var(--red)}
table.rates td.c{color:var(--mute);font-weight:600}
table.rates tr.hl td{background:#fff0b3}
table.rates tr.sec td{background:var(--ink);color:var(--sun);font:800 .85rem ui-monospace,Menlo,monospace;letter-spacing:.08em;padding:.45rem .7rem;border-top:0}
table.rates small{display:block;color:var(--mute);font-weight:400}
table.rates a{color:var(--ink);font-weight:700}
.fine{font-size:.88rem;color:var(--mute)}
@media(max-width:640px){
 table.rates,table.rates tbody,table.rates tr,table.rates td{display:block}
 table.rates thead{display:none}
 table.rates tr{display:grid;grid-template-columns:1fr auto;gap:.1rem .6rem;padding:.7rem;border-top:2px dashed #8a8372}
 table.rates tr:first-child{border-top:0}
 table.rates td{border:0;padding:0}
 table.rates td.c{grid-column:1/-1;font-size:.88rem}
 table.rates td.c:before{content:"Typical published price: ";font-weight:400}
 table.rates tr.sec{display:block;background:var(--ink);padding:.4rem .7rem}
 table.rates tr.sec td{color:var(--sun);font:800 .85rem ui-monospace,Menlo,monospace;letter-spacing:.08em}
 table.rates td.c:empty{display:none}
 .nav{order:3;flex-basis:100%}
}
.leadbox{background:var(--ink);color:var(--paper);border-radius:6px;padding:1.2rem;margin:2rem 0;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--sun)}
.leadbox h2{margin-top:0;color:var(--paper)}
.leadbox label{display:block;font-weight:700;margin:.7rem 0 .2rem}
.leadbox input,.leadbox textarea{width:100%;font:inherit;padding:.7rem;border:2px solid var(--paper);border-radius:4px;background:#fff;color:var(--ink)}
.leadbox button{margin-top:1rem;font:inherit;font-weight:900;font-size:1.1rem;background:var(--sun);color:var(--ink);border:3px solid var(--paper);border-radius:4px;padding:.75rem 1.2rem;cursor:pointer;width:100%}
.leadbox .hp{position:absolute;left:-9999px}
.leadbox a{color:var(--sun)}
#lf-msg{font-weight:700;margin-top:.7rem}
.crumbs{font-size:.9rem;color:var(--mute);margin:1rem 0 0}.crumbs a{color:var(--mute)}
.foot{background:var(--ink);color:var(--paper);margin-top:3rem;padding:2rem 0;font-size:.95rem}
.foot a{color:var(--paper)}.foot .chips a{background:transparent;color:var(--paper);border-color:#5b6b77;font-size:.85rem}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:9;background:var(--sun);border-top:4px solid var(--ink);display:flex;align-items:stretch}
.bar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .4rem;text-decoration:none;color:var(--ink);font-weight:900;font-size:1rem;text-align:center}
.bar a.barbook{background:var(--ink);color:var(--sun)}
.booknow{display:block;max-width:30rem;margin:.9rem 0 0;background:var(--ink);color:var(--sun)!important;text-align:center;text-decoration:none;font-weight:900;font-size:1.15rem;padding:.8rem 1rem;border:3px solid var(--ink);border-radius:6px;box-shadow:5px 5px 0 var(--sun)}
.ofm label{display:block;font-weight:700;margin:.8rem 0 .2rem}.ofm input,.ofm select,.ofm textarea{width:100%;font:inherit;padding:.7rem;border:2px solid var(--ink);border-radius:4px;background:#fff;color:var(--ink)}
.ofm .row{display:grid;gap:.6rem;grid-template-columns:1fr 6.5rem}.ofm .hp{position:absolute;left:-9999px}
.ofm button{margin-top:1rem;font:inherit;font-weight:900;font-size:1.1rem;background:var(--sun);color:var(--ink);border:3px solid var(--ink);border-radius:4px;padding:.8rem 1.2rem;cursor:pointer;width:100%;box-shadow:4px 4px 0 var(--ink)}
.ofm button.sec{background:var(--card)}#qbox{font-weight:700;font-size:1.15rem}
.bar small{font:800 .72rem ui-monospace,Menlo,monospace;text-transform:uppercase;letter-spacing:.05em}
ul.tick{padding-left:1.2rem}ul.tick li{margin:.3rem 0}
@media(min-width:900px){body{padding-bottom:0}.bar{display:none}}