
:root{--gold:#c68b2b;--gold2:#f0c86b;--cream:#f5f0e8;--muted:#c8c1b5;--line:rgba(198,139,43,.62);--soft:rgba(198,139,43,.24)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#020304;color:var(--cream);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
#stormCanvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;opacity:.28;z-index:1}
.site{position:relative;z-index:2}
.clean-nav{background:#030405;border-bottom:1px solid var(--soft);padding:0}
.nav-inner{width:min(1240px,94%);margin:0 auto;min-height:96px;display:grid;grid-template-columns:170px 1fr;align-items:center;gap:20px}
.nav-inner>a:first-child{justify-self:start;align-self:center;background:#030405;border-radius:10px;padding:0;line-height:0}
.nav-inner img{width:158px;max-width:158px;height:auto;display:block;object-fit:contain;background:#030405;border-radius:10px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.85))}
.navlinks{justify-self:end;width:auto;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px;text-align:center}
.navlinks a{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:9px 10px;border:1px solid var(--soft);border-radius:8px;background:rgba(0,0,0,.30);color:#eee4d5;font-size:.62rem;line-height:1;letter-spacing:.55px;text-transform:uppercase;font-weight:800;white-space:nowrap}
.navlinks a:hover,.navlinks a.active{color:var(--gold2);border-color:var(--line);background:rgba(240,200,107,.10)}
.navlinks a.portal-tab{color:var(--gold2);border:1px solid #f0c86b;background:rgba(0,0,0,.30);box-shadow:0 0 18px rgba(240,200,107,.18);font-weight:900}
.navlinks a.portal-tab:hover,.navlinks a.portal-tab.active{color:var(--gold2);background:rgba(240,200,107,.10)}
.page-image-wrap{width:min(1220px,100%);margin:0 auto;background:#020304;line-height:0;position:relative;overflow:hidden}
.page-image{width:100%;height:auto;display:block}
.hotspot{position:absolute;display:block;border-radius:9px;background:rgba(255,255,255,0);z-index:5}
.hotspot:hover{background:rgba(240,200,107,.13);box-shadow:0 0 0 1px rgba(240,200,107,.25)}
.content-section{width:min(1180px,92%);margin:0 auto;padding:48px 0}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.card{background:linear-gradient(180deg,rgba(8,12,15,.96),rgba(3,5,7,.98));border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 24px 54px rgba(0,0,0,.28);line-height:1.55}
.card h3{font-family:Georgia,serif;color:var(--gold2);text-transform:uppercase;font-weight:400;margin-bottom:10px}
.card p,.card li{color:#d7cec1;line-height:1.65}
.card ul{list-style:none}.card li{margin:8px 0}
.link-card{display:block;height:100%}.link-card .card{height:100%;transition:.2s}.link-card:hover .card{transform:translateY(-4px);background:linear-gradient(180deg,rgba(13,18,22,.98),rgba(4,6,8,.98))}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:8px;text-transform:uppercase;letter-spacing:1px;font-size:.8rem;font-weight:900;margin-top:14px}
.btn-gold{background:linear-gradient(135deg,#b67621,#f2cd70 48%,#a96c1e);color:#160e07}
.btn-outline{border:1px solid var(--gold);color:var(--gold2)}
.price{font-family:Georgia,serif;color:var(--gold2);font-size:2.8rem;margin:10px 0;text-align:center}.price span{font-size:.35em}
.plan img{width:95px;height:95px;border-radius:16px;object-fit:cover;margin:0 auto 14px;display:block}
.footer{background:#030405;padding:36px 0 18px;border-top:1px solid var(--soft)}
.footer-grid{width:min(1180px,92%);margin:auto;display:grid;grid-template-columns:1.35fr repeat(5,1fr);gap:25px}
.footer img{width:170px}.footer h4{color:var(--gold2);text-transform:uppercase;font-size:.82rem;margin-bottom:10px}.footer a,.footer p{display:block;color:#c8bfb3;margin:7px 0;font-size:.9rem}.footer a:hover{color:var(--gold2)}
.disclaimer{width:min(1180px,92%);margin:26px auto 0;color:#c8bfb3;font-size:.82rem;line-height:1.55;border:1px solid var(--soft);border-radius:10px;padding:16px;text-align:center}
.legal{width:min(1180px,92%);margin:18px auto 0;border-top:1px solid rgba(198,139,43,.16);padding-top:14px;color:#9c958d;font-size:.8rem;display:flex;justify-content:space-between;gap:18px}
.service-detail{scroll-margin-top:20px;margin-top:18px}
.input{width:100%;min-height:48px;margin-bottom:14px;padding:14px;color:#fff;background:rgba(255,255,255,.04);border:1px solid var(--soft);border-radius:8px}.textarea{min-height:130px}
.clean-contact-hero{width:min(1180px,92%);margin:0 auto;padding:58px 0 46px;display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:stretch}
.contact-photo{min-height:520px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 50% 30%,rgba(240,200,107,.13),rgba(0,0,0,.10) 34%,rgba(0,0,0,.74) 76%),url('/assets/owner-headshot-clean-shape.png');background-size:min(92%,390px) auto;background-position:center bottom;background-repeat:no-repeat;background-color:#050607;box-shadow:inset 0 0 0 1px rgba(240,200,107,.12),0 24px 54px rgba(0,0,0,.34)}
.kicker{color:var(--gold2);text-transform:uppercase;letter-spacing:2px;font-size:.82rem;font-weight:900;margin-bottom:16px}
h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.5rem,6vw,5rem);line-height:.96;font-weight:400;text-transform:uppercase}
.gold{background:linear-gradient(180deg,var(--gold2),var(--gold));-webkit-background-clip:text;color:transparent}
.copy{color:#ded6cb;max-width:700px;font-size:1.08rem;line-height:1.75;margin:20px 0 28px}
.address-block{margin-top:16px;padding:14px;border:1px solid var(--soft);border-radius:10px;color:#d7cec1;line-height:1.6}
@media(max-width:1080px){.nav-inner{grid-template-columns:145px 1fr;gap:12px}.nav-inner img{width:135px}.navlinks{gap:6px}.navlinks a{font-size:.56rem;padding:8px 7px}}
@media(max-width:820px){.nav-inner{grid-template-columns:1fr;justify-items:start;padding:12px 0}.navlinks{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.navlinks a{white-space:normal}.grid2,.grid3,.grid4,.footer-grid,.clean-contact-hero{grid-template-columns:1fr}.contact-photo{min-height:420px}.legal{flex-direction:column}}

.hotspot:focus{outline:2px solid var(--gold2);outline-offset:2px;background:rgba(240,200,107,.12)}
.footer-grid h4 a{color:var(--gold2);font-size:inherit;margin:0}
@media(max-width:1180px){.footer-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.footer-grid{grid-template-columns:1fr}.page-image-wrap{width:100%}.footer img{width:140px}}

/* V31 refinements: centered single-row menu, blended legal/contact/contract pages */
.clean-nav{position:relative;background:linear-gradient(180deg,#050607,#020304);}
.nav-inner{display:flex;align-items:center;justify-content:center;min-height:92px;position:relative;width:min(1240px,94%);}
.nav-inner>a:first-child{position:absolute;left:0;top:50%;transform:translateY(-50%);}
.navlinks{justify-self:center;justify-content:center;margin:0 auto;gap:9px;}
.navlinks a{font-size:.64rem;padding:10px 11px;}

.page-hero{width:min(1180px,92%);margin:0 auto;padding:58px 0 24px;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch;}
.hero-panel{background:linear-gradient(180deg,rgba(8,12,15,.96),rgba(3,5,7,.98));border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 30px 70px rgba(0,0,0,.34);position:relative;overflow:hidden;}
.hero-panel:before{content:"";position:absolute;inset:-1px;background:radial-gradient(circle at 12% 8%,rgba(240,200,107,.16),transparent 36%);pointer-events:none;}
.hero-panel>*{position:relative;z-index:1;}
.hero-subtitle{color:#ded6cb;font-size:1.05rem;line-height:1.75;margin-top:18px;max-width:740px;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;}
.stat{border:1px solid var(--soft);border-radius:13px;padding:16px;background:rgba(0,0,0,.24);text-align:center;}
.stat strong{display:block;color:var(--gold2);font-family:Georgia,serif;font-size:1.55rem;font-weight:400;}
.stat span{display:block;color:#cfc5b8;font-size:.76rem;text-transform:uppercase;letter-spacing:1px;margin-top:5px;}
.visual-card{min-height:440px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 50% 14%,rgba(240,200,107,.24),transparent 34%),linear-gradient(160deg,rgba(15,19,22,.97),rgba(2,3,4,.98));box-shadow:0 30px 70px rgba(0,0,0,.34);display:flex;align-items:center;justify-content:center;text-align:center;padding:32px;position:relative;overflow:hidden;}
.visual-card:after{content:"";position:absolute;inset:28px;border:1px solid rgba(240,200,107,.18);border-radius:16px;}
.visual-card .emblem{width:min(230px,70%);filter:drop-shadow(0 18px 44px rgba(0,0,0,.7));position:relative;z-index:1;}
.badge-list{display:grid;gap:12px;margin-top:24px;}
.badge-item{border:1px solid var(--soft);border-radius:12px;padding:14px 16px;background:rgba(255,255,255,.035);color:#d7cec1;line-height:1.55;}
.badge-item strong{color:var(--gold2);}
.legal-content{width:min(980px,92%);margin:0 auto;padding:22px 0 56px;}
.legal-doc{background:linear-gradient(180deg,rgba(8,12,15,.96),rgba(3,5,7,.98));border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 30px 70px rgba(0,0,0,.28);}
.legal-doc h2{font-family:Georgia,serif;color:var(--gold2);font-weight:400;text-transform:uppercase;margin:26px 0 10px;letter-spacing:.5px;}
.legal-doc h2:first-child{margin-top:0;}
.legal-doc p,.legal-doc li{color:#d7cec1;line-height:1.75;margin:10px 0;}
.legal-doc ul{padding-left:22px;margin:10px 0 18px;}
.legal-doc .notice{border:1px solid var(--soft);border-radius:12px;background:rgba(240,200,107,.06);padding:16px;margin:18px 0;color:#efe4d2;}
.contract-grid,.contact-grid{width:min(1180px,92%);margin:0 auto;padding:24px 0 52px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.contract-grid .card,.contact-grid .card{min-height:100%;}
.contact-hero{width:min(1180px,92%);margin:0 auto;padding:58px 0 28px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch;}
.contact-card-feature{background:radial-gradient(circle at 15% 8%,rgba(240,200,107,.18),transparent 32%),linear-gradient(180deg,rgba(8,12,15,.96),rgba(3,5,7,.98));border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 30px 70px rgba(0,0,0,.34);}
.contact-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px;}
.info-tile{border:1px solid var(--soft);border-radius:13px;padding:16px;background:rgba(0,0,0,.26);color:#d7cec1;line-height:1.55;}
.info-tile strong{display:block;color:var(--gold2);text-transform:uppercase;font-size:.78rem;letter-spacing:1px;margin-bottom:8px;}
.contact-form-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(10,14,17,.98),rgba(3,5,7,.98));padding:30px;box-shadow:0 30px 70px rgba(0,0,0,.34);}
.contact-note{width:min(1180px,92%);margin:0 auto 48px;}
@media(max-width:1180px){.nav-inner{flex-direction:column;gap:10px;padding:14px 0}.nav-inner>a:first-child{position:static;transform:none}.navlinks{flex-wrap:wrap}.navlinks a{font-size:.6rem}}
@media(max-width:820px){.page-hero,.contact-hero{grid-template-columns:1fr}.contract-grid,.contact-grid{grid-template-columns:1fr}.contact-info-grid,.stat-strip{grid-template-columns:1fr}.visual-card{min-height:300px}.navlinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;}.navlinks a{white-space:normal}}


/* V32 refinements: transparent centered menu, legal text wrapping, better blending */
.clean-nav{position:sticky;top:0;z-index:20;background:linear-gradient(180deg,rgba(2,3,4,.26),rgba(2,3,4,.08));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(198,139,43,.18)}
.nav-inner{display:flex !important;align-items:center;justify-content:center !important;gap:18px;min-height:102px;padding:16px 0;background:transparent !important}
.nav-inner>a:first-child{position:absolute;left:0;top:50%;transform:translateY(-50%);background:transparent !important}
.nav-inner img{background:transparent !important}
.navlinks{justify-content:center !important;align-items:center;flex-wrap:wrap;gap:10px;max-width:calc(100% - 240px)}
.navlinks a{background:rgba(2,3,4,.52);box-shadow:0 12px 24px rgba(0,0,0,.22)}
.navlinks a.portal-tab{background:rgba(15,12,5,.56)}
.page-hero,.contact-hero{align-items:stretch}
.hero-panel,.legal-doc{overflow:visible}
.hero-subtitle,.legal-doc,.legal-doc p,.legal-doc li,.legal-doc a,.legal-doc h2,.notice{overflow-wrap:anywhere;word-break:normal}
.legal-content{padding-top:14px;padding-bottom:64px}
.legal-doc h2{font-size:clamp(1.15rem,2.2vw,1.65rem);line-height:1.35}
.legal-doc p,.legal-doc li{font-size:1rem}
.legal-doc a{color:var(--gold2)}
.legal-doc .notice{line-height:1.7}
@media(max-width:1180px){.clean-nav{background:linear-gradient(180deg,rgba(2,3,4,.34),rgba(2,3,4,.12))}.nav-inner{padding:14px 0 18px}.navlinks{max-width:100%}}
@media(max-width:820px){.nav-inner{display:flex !important;flex-direction:column;align-items:center;justify-content:center;padding:14px 0 18px;gap:10px}.nav-inner>a:first-child{position:static;transform:none}.navlinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:100%;gap:8px}.navlinks a{white-space:normal}}


/* V33 detailed service pages */
.service-detail-hero{width:min(1180px,92%);margin:0 auto;padding:58px 0 28px;display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:stretch}
.service-visual{min-height:440px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 52% 16%,rgba(240,200,107,.24),transparent 36%),linear-gradient(160deg,rgba(15,19,22,.97),rgba(2,3,4,.98));box-shadow:0 30px 70px rgba(0,0,0,.34);padding:30px;display:flex;flex-direction:column;justify-content:center;gap:14px;position:relative;overflow:hidden}
.service-visual:after{content:"";position:absolute;inset:28px;border:1px solid rgba(240,200,107,.18);border-radius:16px;pointer-events:none}
.service-visual .badge-item{position:relative;z-index:1}
.need-panel{width:min(1180px,92%);margin:0 auto 18px;padding:26px 30px;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at 10% 0%,rgba(240,200,107,.12),transparent 38%),linear-gradient(180deg,rgba(9,13,16,.96),rgba(3,5,7,.98));box-shadow:0 24px 54px rgba(0,0,0,.25)}
.need-panel h2,.process-section h2,.split-section h2{font-family:Georgia,serif;color:var(--gold2);text-transform:uppercase;font-weight:400;letter-spacing:.5px;margin-bottom:10px}
.need-panel p{color:#ded6cb;line-height:1.75;font-size:1.05rem}
.process-section{width:min(1180px,92%);margin:0 auto;padding:30px 0 56px}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.process-step{border:1px solid var(--line);border-radius:16px;padding:22px;background:linear-gradient(180deg,rgba(8,12,15,.96),rgba(3,5,7,.98));box-shadow:0 20px 48px rgba(0,0,0,.24);min-height:210px}
.process-step .number{display:inline-flex;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;border:1px solid var(--gold);color:var(--gold2);font-family:Georgia,serif;margin-bottom:14px;background:rgba(240,200,107,.07)}
.process-step h3{font-family:Georgia,serif;color:var(--gold2);font-weight:400;text-transform:uppercase;font-size:1.05rem;margin-bottom:9px;line-height:1.25}
.process-step p{color:#d7cec1;line-height:1.65}
.split-section{width:min(1180px,92%);margin:0 auto 56px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.check-list{list-style:none;margin-top:12px;padding:0}.check-list li{margin:10px 0;color:#d7cec1;line-height:1.6;padding-left:26px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--gold2);font-weight:900}
.cta-band{width:min(1180px,92%);margin:0 auto 58px;border:1px solid var(--line);border-radius:18px;padding:30px;background:linear-gradient(135deg,rgba(198,139,43,.14),rgba(3,5,7,.98));display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 24px 54px rgba(0,0,0,.25)}
.cta-band h2{font-family:Georgia,serif;color:var(--gold2);font-weight:400;text-transform:uppercase}.cta-band p{color:#ded6cb;line-height:1.65;margin-top:8px}.cta-band .hero-actions{margin-top:0;flex-shrink:0}
@media(max-width:920px){.service-detail-hero,.split-section{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.cta-band{flex-direction:column;align-items:flex-start}.service-visual{min-height:300px}}


/* V35 thank-you confirmation flow */
.thankyou-hero .hero-panel{min-height:430px;display:flex;flex-direction:column;justify-content:center}
.thankyou-card{text-align:center;max-width:840px;margin:0 auto}
.thankyou-section{padding-top:20px}
.form-confirmation{display:none;margin-top:16px;border:1px solid var(--line);border-radius:14px;background:rgba(240,200,107,.08);padding:16px;color:#efe4d2;line-height:1.6}

/* V36 homepage logo and route safety fixes */
.clean-nav .nav-inner > a:first-child img{width:118px !important;max-width:118px !important;height:auto !important;object-fit:contain !important;}
.clean-nav .nav-inner > a:first-child{max-width:128px !important;}
.footer img{max-width:150px !important;height:auto !important;object-fit:contain !important;}
@media(max-width:1180px){.clean-nav .nav-inner > a:first-child img{width:110px !important;max-width:110px !important;}.clean-nav .nav-inner > a:first-child{max-width:120px !important;}}
@media(max-width:820px){.clean-nav .nav-inner > a:first-child img{width:104px !important;max-width:104px !important;}.footer img{max-width:138px !important;}}


/* V37 viewer-safe navigation and homepage CTA cleanup */
a[target="_blank"]{ /* safety fallback: no visible style change */ }
.clean-nav a,.footer a,.btn,.hotspot{cursor:pointer;}
.page-image-wrap .hotspot{touch-action:manipulation;}
.clean-nav{isolation:isolate;}
@media(max-width:820px){.page-image-wrap{overflow:hidden}.hotspot:hover{box-shadow:none}}


/* V38 Safari-safe absolute navigation and stable logo sizing */
.nav-inner>a:first-child{width:132px;max-width:132px;min-width:132px;display:flex;align-items:center;justify-content:center;overflow:visible;z-index:30}
.nav-inner>a:first-child img,.nav-inner img{width:132px !important;max-width:132px !important;height:auto !important;object-fit:contain !important}
.navlinks{position:relative;z-index:31}
.navlinks a,.footer a,.hotspot,.link-card,.btn{cursor:pointer;touch-action:manipulation}
#stormCanvas{pointer-events:none !important}
@media(max-width:1180px){.nav-inner>a:first-child{width:118px;max-width:118px;min-width:118px}.nav-inner>a:first-child img,.nav-inner img{width:118px !important;max-width:118px !important}}


/* V39 navigation loop reset */
.nav-inner img{max-width:118px !important;width:118px !important;height:auto !important;}
.navlinks a{cursor:pointer;}
