/* Styled to match droitco.com: Fraunces display + Inter UI (both SIL OFL 1.1), navy + signal orange. */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/fraunces-latin.7234ed860a.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;src:url("/fonts/inter-latin.2c295d99e2.woff2") format("woff2")}
/* Metric-matched fallbacks (computed from the shipped woff2 files vs Arial/Liberation Sans and Times New Roman/Liberation Serif) to cut layout shift while the web fonts load. */
@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:107.5%;ascent-override:90.1%;descent-override:22.4%;line-gap-override:0%}
@font-face{font-family:"Fraunces Fallback";src:local("Times New Roman"),local("Liberation Serif"),local("Times");size-adjust:128.6%;ascent-override:76%;descent-override:19.8%;line-gap-override:0%}
:root{--navy-900:#0b1626;--navy-800:#0f1e33;--navy-700:#13253f;--navy:#1a3157;--navy-400:#41628f;--signal:#e1751f;--signal-600:#9a4a0c;--signal-700:#a34f0e;--signal-800:#8a420b;--signal-100:#fdf0e3;
--bg:#fbfaf8;--surface:#fff;--surface-2:#f4f1ec;--line:#e6e2db;--line-strong:#8a8578;--ink:#141c27;--slate:#586274;--muted:#5f6878;
--serif:"Fraunces","Fraunces Fallback","Iowan Old Style",Georgia,serif;--sans:"Inter","Inter Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
--t-2:clamp(1.35rem,1.24rem + .55vw,1.75rem);--t-3:clamp(1.7rem,1.47rem + 1.1vw,2.5rem);--t-5:clamp(2.3rem,1.7rem + 3vw,4.1rem);
--sp-2:.7rem;--sp-3:1.1rem;--sp-4:1.7rem;--sp-5:2.6rem;--sp-6:4rem;--r-sm:8px;--r:14px;--r-pill:999px;
--shadow-1:0 1px 2px rgba(11,22,38,.05),0 2px 8px rgba(11,22,38,.04);--shadow-2:0 2px 4px rgba(11,22,38,.05),0 12px 32px rgba(11,22,38,.09);
--ease:cubic-bezier(.22,1,.36,1);--header-h:4.5rem;--wrap:1200px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.97rem + .14vw,1.06rem);line-height:1.62;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.032em;line-height:1.1;margin:0 0 var(--sp-2);color:var(--navy-900);text-wrap:balance}
p{margin:0 0 var(--sp-3)}a{color:var(--navy);text-underline-offset:.22em}a:hover{color:var(--signal-600)}
:focus-visible{outline:2px solid var(--navy);outline-offset:3px;border-radius:3px}
.wrap{width:min(var(--wrap),calc(100% - 2.5rem));margin-inline:auto}
.skip{position:absolute;left:1rem;top:-4rem;z-index:200;background:#fff;color:var(--navy);padding:.6rem 1rem;font-weight:600;border-radius:var(--r-sm)}.skip:focus-visible{top:1rem}
.preview{position:relative;z-index:101;background:var(--signal-100);color:#6b3a0c;text-align:center;font-size:.8rem;padding:6px 12px;border-bottom:1px solid #f3c99d}
.site-header{position:sticky;top:0;z-index:100;height:var(--header-h);display:flex;align-items:center;background:rgba(11,22,38,.94);backdrop-filter:saturate(1.4) blur(16px);-webkit-backdrop-filter:saturate(1.4) blur(16px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.site-header .wrap{display:flex;align-items:center;gap:var(--sp-3)}
.brand{font-weight:700;font-size:1rem;letter-spacing:.22em;text-transform:uppercase;color:#fff;text-decoration:none;display:inline-flex;flex-direction:column;line-height:1.15}
.brand small{font-size:.62rem;letter-spacing:.3em;color:#f5b476;font-weight:600}.brand:hover{color:#fff}
.site-nav{display:flex;gap:.15rem;margin-left:auto}
.site-nav a{color:rgba(255,255,255,.78);text-decoration:none;font-size:.845rem;font-weight:500;padding:.55rem .75rem;border-radius:var(--r-sm)}
.site-nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.header-cta{flex:none;display:inline-flex;align-items:center;gap:.45rem;color:#fff;text-decoration:none;font-size:.85rem;font-weight:600;padding:.5rem .95rem;border:1px solid rgba(255,255,255,.34);border-radius:var(--r-pill);white-space:nowrap}
.header-cta:hover{color:#fff;background:var(--signal-700);border-color:var(--signal-700)}
.site-header :focus-visible,.hero :focus-visible,.site-footer :focus-visible,.bar :focus-visible{outline-color:#f5b476}
.header-cta span.lbl{display:none}
.ico{width:.9rem;height:.9rem;flex:none}
.btn{--bg:var(--navy);--fg:#fff;--bd:var(--navy);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.82rem 1.4rem;background:var(--bg);color:var(--fg);border:1px solid var(--bd);border-radius:var(--r-pill);font-size:.9rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;font-family:var(--sans);white-space:nowrap;transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease)}
.btn:hover{color:var(--fg);transform:translateY(-2px);box-shadow:var(--shadow-2)}
.btn-accent{--bg:var(--signal-700);--bd:var(--signal-700)}.btn-accent:hover{--bg:var(--signal-800);--bd:var(--signal-800)}
.btn-ghost{--bg:transparent;--fg:var(--navy);--bd:var(--line-strong)}.btn-ghost:hover{--bg:var(--navy);--fg:#fff;--bd:var(--navy)}
.btn-outline-light{--bg:transparent;--fg:#fff;--bd:rgba(255,255,255,.45)}.btn-outline-light:hover{--bg:#fff;--fg:var(--navy-900);--bd:#fff}
.btn-sm{min-height:38px;padding:.55rem 1rem;font-size:.83rem}
.btn-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:var(--sp-4)}
.eyebrow{display:flex;align-items:center;gap:.6rem;margin:0 0 var(--sp-2);font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--signal-600)}
.eyebrow::before{content:"";width:1.6rem;height:2px;background:var(--signal);flex:none}
.lede{font-size:clamp(1.05rem,1rem + .3vw,1.2rem);line-height:1.55;color:var(--slate);max-width:42rem}
.hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:min(40rem,86svh);padding:var(--sp-6) 0;background:var(--navy-900);color:#fff;overflow:hidden}
.hero-media{position:absolute;inset:0;z-index:-2}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:40% 50%}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(104deg,rgba(11,22,38,.94) 0%,rgba(11,22,38,.82) 40%,rgba(11,22,38,.42) 74%,rgba(11,22,38,.28) 100%),linear-gradient(to top,rgba(11,22,38,.86) 0%,rgba(11,22,38,0) 42%)}
.hero h1{color:#fff;font-size:var(--t-5);letter-spacing:-.042em;max-width:17ch;margin-bottom:var(--sp-3)}
.hero .eyebrow{color:#f5b476}.hero p{color:rgba(255,255,255,.86);max-width:38rem;font-size:clamp(1.05rem,1rem + .35vw,1.22rem)}
.hero address{font-style:normal;font-weight:600;color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:var(--sp-4) 0 0;padding:0;list-style:none}
.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .85rem;border:1px solid rgba(255,255,255,.26);border-radius:var(--r-pill);font-size:.8rem;color:rgba(255,255,255,.9);background:rgba(255,255,255,.06)}
.section{padding-block:var(--sp-6)}.band-soft{background:var(--surface-2)}
.h-md{font-size:var(--t-3)}
.tiles{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));margin-top:calc(var(--sp-5) * -1);position:relative;z-index:2}
.tile{display:flex;flex-direction:column;gap:.3rem;padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-2);text-decoration:none;color:var(--ink);transition:transform .3s var(--ease)}
.tile:hover{transform:translateY(-3px);color:var(--ink)}.tile-title{font-family:var(--serif);font-weight:500;letter-spacing:-.032em;line-height:1.1;color:var(--navy-900);font-size:var(--t-2);margin:0}.tile span{color:var(--slate);font-size:.95rem}
.tile b{color:var(--signal-600);font-size:.85rem;margin-top:.4rem}
.rates{margin-top:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);overflow-x:auto;-webkit-overflow-scrolling:touch}
.size small{display:none;font-family:var(--sans);font-size:.8rem;color:var(--slate);white-space:normal;line-height:1.35;margin-top:.25rem}
.price .fee{display:block;font-family:var(--sans);font-size:.78rem;color:var(--slate);white-space:normal;line-height:1.35;margin-top:.2rem}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:1rem 1.1rem;border-bottom:1px solid var(--line);vertical-align:middle}
th{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:700;background:var(--surface-2)}
tr:last-child td{border-bottom:0}.size{font-family:var(--serif);font-size:1.3rem;color:var(--navy-900);white-space:nowrap}
.price{font-family:var(--serif);font-size:1.3rem;color:var(--navy-900);white-space:nowrap}.price small{font-family:var(--sans);font-size:.8rem;color:var(--muted)}
.micro{font-size:.85rem;color:var(--muted);line-height:1.5;margin-top:var(--sp-3)}
.steps{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));margin:var(--sp-4) 0 0;padding:0;list-style:none;counter-reset:step}
.step{padding:var(--sp-4) var(--sp-3) var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.step::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:block;font-family:var(--serif);font-size:1.6rem;color:var(--signal-700);margin-bottom:var(--sp-2)}
.step h3{font-size:1.18rem}.contact-actions{display:grid;gap:.7rem;margin-top:var(--sp-3)}.contact-actions .btn{width:100%}.step p{margin:0;color:var(--slate);font-size:.95rem}
.faq{max-width:48rem;margin-top:var(--sp-4)}
.faq details{border-bottom:1px solid var(--line);padding:.2rem 0}
.faq summary{cursor:pointer;list-style:none;padding:1rem 2rem 1rem 0;font-family:var(--serif);font-size:1.2rem;color:var(--navy-900);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:.85rem;color:var(--signal-700);font-family:var(--sans);font-size:1.4rem}
.faq details[open] summary::after{content:"\2013"}.faq details p{color:var(--slate);margin:0 0 1rem}
.split{display:grid;gap:var(--sp-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:start}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--sp-4);box-shadow:var(--shadow-1)}
.card address{font-style:normal}
.form{display:grid;gap:var(--sp-3);max-width:34rem}.field{display:grid;gap:.35rem}
.field>span{font-size:.86rem;font-weight:600;color:var(--navy-900)}
.field input,.field textarea{font:inherit;padding:.75rem .95rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--navy-400);box-shadow:0 0 0 4px rgba(26,49,87,.1)}
.hp{position:absolute;left:-9999px}
.site-footer{background:var(--navy-900);color:rgba(255,255,255,.68);padding:var(--sp-6) 0 var(--sp-4);font-size:.9rem}
.site-footer a{color:rgba(255,255,255,.85)}.site-footer a:hover{color:#f5b476}
.footer-grid{display:grid;gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));padding-bottom:var(--sp-4);border-bottom:1px solid rgba(255,255,255,.12)}
.footer-phone{display:inline-block;font-family:var(--serif);font-size:1.5rem;font-weight:500;letter-spacing:-.03em;color:#fff!important;text-decoration:none}
.site-footer h2{font-family:var(--sans);font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:var(--sp-2)}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.footer-bottom{display:flex;flex-wrap:wrap;gap:.6rem var(--sp-3);justify-content:space-between;padding-top:var(--sp-3);font-size:.82rem;color:rgba(255,255,255,.5)}.footer-bottom p{margin:0}
.bar{position:fixed;bottom:0;left:0;right:0;z-index:99;display:none;gap:.5rem;padding:.6rem .6rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(11,22,38,.96);backdrop-filter:blur(12px);box-shadow:0 -8px 24px rgba(11,22,38,.2)}
.bar .btn{flex:1;padding:.7rem .5rem;min-height:46px}
.mnav{display:none;position:static}.site-header .wrap{position:relative}
.mnav summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:.5rem .85rem;color:#fff;font-size:.85rem;font-weight:600;border:1px solid rgba(255,255,255,.34);border-radius:var(--r-pill)}
.mnav summary::-webkit-details-marker{display:none}
.mnav-ico{width:1rem;height:2px;background:currentColor;box-shadow:0 -5px 0 currentColor,0 5px 0 currentColor;flex:none}
.mnav[open] summary{background:rgba(255,255,255,.1)}
.mnav nav{position:absolute;right:0;top:calc(100% + .45rem);max-width:calc(100vw - 2.5rem);min-width:14rem;display:grid;padding:.4rem;background:var(--navy-900);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);box-shadow:var(--shadow-2);z-index:120}
.mnav nav a{color:#fff;text-decoration:none;font-size:.95rem;font-weight:500;padding:.8rem .9rem;border-radius:var(--r-sm);min-height:44px}
.mnav nav a:hover{background:rgba(255,255,255,.08);color:#fff}
@media(max-width:900px){.site-nav{display:none}.mnav{display:block;margin-left:auto}.header-cta{margin-left:0}}
@media(max-width:400px){.mnav summary{padding:.5rem .7rem}.site-header .wrap{gap:.5rem}.brand{font-size:.82rem;letter-spacing:.1em}}
@media(max-width:360px){.header-cta span.lbl{display:none}.header-cta{padding:.5rem .7rem;min-height:44px}.header-cta .ico{width:1.05rem;height:1.05rem}}
@media(max-width:640px){.bar{display:flex}body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.size small{display:block}.hero{min-height:auto;padding:var(--sp-5) 0 calc(var(--sp-5) + 1rem)}
.hero .btn-row .btn{flex:1 1 100%}.tiles{margin-top:var(--sp-4)}th.good,td.good{display:none}th,td{padding:.85rem .7rem}}
@media(max-width:400px){.header-cta span.num{display:none}.header-cta span.lbl{display:inline}.brand{font-size:.9rem;letter-spacing:.16em}}
@media(max-width:380px){.rates td:last-child{white-space:normal}.rates td,.rates th{padding:.75rem .5rem}.size,.price{font-size:1.15rem}.btn-sm{padding:.5rem .8rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.mt-08{margin-top:.8rem}.mt-1{margin-top:1rem}.addr{font-style:normal}.ico-inline{display:inline;vertical-align:-2px}.site-footer .footer-phone.footer-phone-dark,.footer-phone.footer-phone-dark{color:var(--navy-900)!important}.secure-note{margin-top:.4rem}
