/* Aquila Underwriting — restrained, digital-first brand system */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#10263b;--navy2:#0b1e30;--gold:#b88f2d;--green:#31765e;
  --paper:#fffdf7;--white:#fff;--cream:#f3f1ea;--ink:#263746;
  --mid:#586670;--light-border:#ccd3d2;
  --font-serif:Georgia,'Times New Roman',serif;
  --font-sans:Arial,Helvetica,sans-serif
}
html{scroll-behavior:smooth}
body{display:flex;min-height:100vh;flex-direction:column;font-family:var(--font-sans);color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 42px}
.eyebrow{margin-bottom:16px;color:var(--green);font-size:10px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
h1,h2,h3{color:var(--navy)}

/* Header */
.site-nav{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;height:86px;padding:0 max(42px,calc((100vw - 1180px)/2 + 42px));background:rgba(255,253,247,.97);border-bottom:1px solid var(--light-border)}
.nav-logo-img{width:225px;height:auto}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{padding:33px 0 30px;border-bottom:2px solid transparent;font-size:12px}
.nav-links a:hover,.nav-links a.active{border-color:var(--gold)}
.nav-links a:last-child{padding:12px 17px;border:1px solid var(--navy);border-radius:3px;font-weight:700}
.nav-links a:last-child:hover,.nav-links a:last-child.active{background:var(--navy);color:var(--white)}
.nav-hamburger{display:none;padding:8px;border:0;background:none}
.nav-hamburger span{display:block;width:24px;height:2px;margin:5px;background:var(--navy)}
.mobile-menu{display:none;padding:8px 22px 18px;background:var(--paper);border-bottom:1px solid var(--light-border)}
.mobile-menu.open{display:block}
.mobile-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--cream);font-size:13px}

/* Homepage */
.home-hero{position:relative;overflow:hidden;padding:52px 0 28px}
.home-hero h1{max-width:980px;margin:25px 0 18px;color:var(--navy);font-size:clamp(52px,5.8vw,74px);line-height:1;letter-spacing:-.05em}
.home-hero .sub{max-width:750px;font-size:18px;line-height:1.55}
.featured-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-top:48px}
.featured-head h2{font:25px/1.1 var(--font-serif)}
.all-products{flex:none;white-space:nowrap;padding-bottom:4px;border-bottom:1px solid #97761b;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.home-products{display:grid;grid-template-columns:1fr 1fr;margin-top:12px;border:1px solid var(--navy)}
.home-card{min-height:190px;padding:24px 28px 22px}
.home-card:first-child{border-right:1px solid var(--navy)}
.home-card .status{display:block;color:var(--green);font-size:9px;font-weight:800;letter-spacing:.09em;text-align:right;text-transform:uppercase}
.home-card h3{margin:26px 0 9px;font-size:25px}
.home-card p{max-width:430px;margin-bottom:18px;font-size:13px;line-height:1.55}
.home-card a{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.home-card a::after{content:' →';color:#97761b}
.home-contact-line{display:flex;align-items:baseline;justify-content:space-between;gap:30px;padding:17px 0 15px;border-bottom:1px solid var(--light-border)}
.home-contact-line p{color:var(--mid);font-size:13px}
.home-contact-line strong{color:var(--navy)}
.home-contact-line a{flex:none;padding-bottom:2px;border-bottom:1px solid var(--gold);color:var(--navy);font-size:11px;font-weight:800}
.credibility{display:grid;grid-template-columns:1.1fr 1fr 1.25fr;margin-top:18px;border-top:1px solid var(--light-border)}
.proof{padding:14px 26px 0 0}
.proof+.proof{padding-left:26px;border-left:1px solid var(--light-border)}
.proof b{display:block;margin-bottom:4px;font-size:12px}
.proof span{display:block;color:var(--mid);font-size:10px;line-height:1.45}

/* Inner-page foundation */
.page-hero{padding:54px 0 50px;background:var(--paper);border-bottom:1px solid var(--light-border);color:var(--ink)}
.page-hero .wrap{max-width:1180px}
.subtle-back{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:flex-start;margin-bottom:17px;color:var(--mid);font-size:20px;line-height:1;opacity:.58;transition:color .18s ease,opacity .18s ease,transform .18s ease}
.subtle-back:hover{color:var(--navy);opacity:1;transform:translateX(-2px)}
.subtle-back:focus-visible{outline:1px solid var(--gold);outline-offset:4px;opacity:1}
.page-hero h1{max-width:900px;color:var(--navy);font-family:var(--font-sans);font-size:clamp(48px,5.3vw,68px);font-weight:700;line-height:1.01;letter-spacing:-.047em}
.page-hero p:not(.eyebrow){max-width:760px;margin-top:16px;color:var(--ink);font-size:17px;line-height:1.55}
.section,.section.white,.section.cream,.section.navy{padding:56px 0;background:var(--paper);color:var(--ink)}
main+.section,header+.section,.section+.section,.section+div.section,div.section+.section{border-top:1px solid var(--light-border)}
.section-header{max-width:760px;margin-bottom:30px}
.section-header h2,.split-copy h2,.section.navy h2,.on-dark h2{margin-bottom:14px;color:var(--navy);font:34px/1.14 var(--font-serif);letter-spacing:-.02em}
.section-header .lede,.on-dark .section-header .lede{color:var(--mid);font-size:15px;line-height:1.65}
.section .eyebrow,.section .eyebrow.gold,.on-dark .eyebrow{color:var(--green)}
.split,.split.reverse{display:grid;grid-template-columns:minmax(0,790px);gap:0;align-items:start}
.split-copy p{margin-bottom:15px;font-size:15px;line-height:1.7}
.pull-quote{margin:0 0 18px;padding-left:32px;border-left:1px solid var(--gold);color:var(--navy);font:italic 29px/1.4 var(--font-serif)}
.pull-quote-attr{margin-bottom:36px;padding-left:33px;color:var(--mid);font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}

/* Product overview and appetite */
.division-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:1px solid var(--navy)}
.division{display:flex;background:var(--paper)}
.division+.division{border-left:1px solid var(--navy)}
.division-body{display:flex;flex:1;flex-direction:column;padding:27px}
.division h2{margin-bottom:7px;font:27px/1.15 var(--font-sans)}
.division .status{margin-bottom:18px;color:var(--green);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.division>.division-body>p{margin-bottom:22px;font-size:14px;line-height:1.6}
.division ul{margin-bottom:28px;list-style:none}
.division li{padding:8px 0;border-bottom:1px solid var(--light-border);color:var(--mid);font-size:13px}
.division .btn{align-self:flex-start;margin-top:auto}
.appetite-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;align-items:start;gap:48px}
.appetite-group{margin-bottom:28px}
.appetite-group:last-child{margin-bottom:0}
.appetite-group h3{margin-bottom:8px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.appetite-group ul{columns:2;column-gap:34px;list-style:none}
.appetite-group li{padding:9px 0;border-bottom:1px solid var(--light-border);break-inside:avoid;color:var(--ink);font-size:14px}
.limits-card{position:static;padding:24px 26px;border:1px solid var(--navy);background:var(--paper);color:var(--ink)}
.limits-card .tag{display:inline-block;margin-bottom:15px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.limits-card dl{display:flex;flex-direction:column}
.limits-card div{padding:12px 0;border-bottom:1px solid var(--light-border)}
.limits-card div:last-child{padding-bottom:0;border-bottom:0}
.limits-card dt{margin-bottom:7px;color:var(--green);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.limits-card dd{margin:0;color:var(--ink);font-size:13px;line-height:1.55}
.limits-card dd strong{color:var(--ink);font-weight:700}
.appetite-note{margin-top:26px;color:var(--mid);font-size:12px}

/* Flat process and proof grids */
.steps,.approach,.ethos-grid,.ethos-grid.grid-2{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--navy)}
.steps{grid-template-columns:repeat(3,1fr)}
.ethos-grid:not(.grid-2){grid-template-columns:repeat(3,1fr)}
.step,.approach-item,.ethos-item{min-height:0;padding:24px;background:var(--paper);border-right:1px solid var(--navy);color:var(--ink)}
.step:last-child,.approach-item:last-child,.ethos-item:last-child{border-right:0}
.step-num,.approach-item .n{margin-bottom:16px;color:var(--gold);font:18px/1 var(--font-serif)}
.step h3,.approach-item h3,.ethos-item h3{margin-bottom:9px;color:var(--navy);font:17px/1.25 var(--font-sans)}
.step p,.approach-item p,.ethos-item p{color:var(--mid);font-size:13px;line-height:1.6}
.ethos-item .rule{display:none}
.tick-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--navy);border-bottom:1px solid var(--navy);list-style:none}
.tick-list li{padding:14px 0;border-bottom:1px solid var(--light-border);color:var(--ink);font-size:14px}

/* People, contact and regulation */
.team-grid,.contact-grid,.reg-grid{display:grid;gap:0;border:1px solid var(--navy)}
.team-grid{grid-template-columns:repeat(2,1fr)}
.contact-grid{grid-template-columns:repeat(3,1fr)}
.reg-grid{grid-template-columns:repeat(2,1fr)}
.team-card,.contact-card,.reg-card{padding:25px;background:var(--paper);border-right:1px solid var(--navy)}
.team-card:last-child,.contact-card:last-child,.reg-card:last-child{border-right:0}
.team-card h3{font:21px/1.2 var(--font-sans)}
.team-card .role,.contact-card h3{color:var(--green);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.team-card a,.contact-card .email{display:block;color:var(--navy);font-size:14px}
.contact-card .email{margin:10px 0 14px;word-break:break-word}
.contact-card p{color:var(--mid);font-size:13px;line-height:1.6}
.response-note,.address-block{margin:20px 0;padding:20px 22px;border:1px solid var(--light-border);background:var(--paper);font-size:13px;line-height:1.75}
.response-note-spaced{margin-top:26px}
.inline-link-gold{color:var(--gold);font-weight:500}
.inline-link-strong{color:var(--navy);font-weight:700}
.reg-card h3{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--light-border);font:17px/1.25 var(--font-sans)}
.reg-card dl div{display:flex;justify-content:space-between;gap:18px;padding:11px 0;border-bottom:1px solid var(--light-border);flex-wrap:wrap}
.reg-card dt{color:var(--green);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.reg-card dd{margin:0;font-size:13px;text-align:right}
.reg-note{max-width:720px;margin-top:30px;color:var(--mid);font-size:13px;line-height:1.75}
.reg-note a{color:var(--navy);font-weight:700}

/* Actions, TOBA and legal */
.btn{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:2px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.btn::after{content:'→';margin-left:20px;font-size:15px}
.btn-navy{background:var(--navy);color:var(--white)}
.btn-gold{background:var(--gold);color:var(--navy2)}
.cta-panel{display:grid;grid-template-columns:1.15fr .85fr;border:1px solid var(--navy)}
.cta-panel>div{padding:27px}
.cta-panel h2{margin-bottom:12px;font:28px/1.15 var(--font-serif)}
.cta-panel p{margin-bottom:20px;font-size:13px;line-height:1.65}
.contact-rows{background:var(--navy);color:var(--white)}
.contact-row{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.contact-row:first-child{padding-top:0}
.contact-row .label{display:block;margin-bottom:5px;color:#a9cfbf;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.contact-row .value{font-size:13px;line-height:1.5}
.contact-row .fine-value{font-size:14px;font-weight:300}
.contact-row.no-border{border-bottom:0}
.contact-row a{color:#e1c45e}
.section-action{margin-top:48px}
.section.product-contact{padding:22px 0}
.simple-contact{display:flex;align-items:baseline;justify-content:space-between;gap:24px}
.simple-contact span{color:var(--mid);font-size:12px}
.simple-contact a{padding-bottom:2px;border-bottom:1px solid var(--gold);color:var(--navy);font-size:11px;font-weight:800}
.toba-steps{display:flex;flex-direction:column;max-width:840px;border-top:1px solid var(--navy);counter-reset:toba}
.toba-step{display:flex;align-items:baseline;gap:26px;padding:16px 0;border-bottom:1px solid var(--light-border);color:var(--ink);font-size:14px;line-height:1.7;counter-increment:toba}
.toba-step::before{content:counter(toba,decimal-leading-zero);flex:none;width:44px;color:var(--gold);font:19px var(--font-serif)}
.toba-step a{color:var(--navy);font-weight:700}
.values{max-width:760px}
.values h4{margin-bottom:16px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.values ul{list-style:none}
.values li{padding:10px 0;border-bottom:1px solid var(--light-border);font-size:14px;line-height:1.6}
.values-close{margin-top:30px;color:var(--navy);font:19px/1.5 var(--font-sans)}
.legal-layout{display:grid;grid-template-columns:210px 1fr;align-items:start;gap:60px}
.legal-toc{position:sticky;top:104px}
.legal-toc h4{margin-bottom:16px;color:var(--green);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.legal-toc a{display:block;padding:9px 0 9px 16px;border-left:1px solid var(--light-border);color:var(--mid);font-size:12px}
.legal-toc a:hover{border-left-color:var(--gold);color:var(--navy)}
.legal-body section{margin-bottom:48px;padding-top:12px;scroll-margin-top:100px}
.legal-body .section-tag{margin-bottom:10px;color:var(--green);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.legal-body h2{margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--navy);font:28px/1.2 var(--font-serif)}
.fact-table{width:100%;margin:18px 0 8px;border-collapse:collapse;font-size:13px}
.fact-table td{padding:11px 14px;border-bottom:1px solid var(--light-border)}
.fact-table td:first-child{width:205px;padding-top:14px;color:var(--green);font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;vertical-align:top}
.prose{max-width:850px}
.prose h3{margin:28px 0 10px;font-size:18px}
.prose p,.prose li{color:var(--ink);font-size:14px;line-height:1.75}
.prose p{margin-bottom:13px}
.prose ul{margin-bottom:18px;padding-left:22px}

/* Deliberately quiet regulatory footer */
footer{margin-top:auto;padding:20px 0 24px;background:var(--paper);border-top:1px solid var(--light-border);color:var(--navy)}
.footer-bottom{display:grid;grid-template-columns:1fr auto;align-items:center;gap:35px}
.footer-legal{max-width:900px;color:#53616b;font-size:10px;line-height:1.55}
.footer-links{display:flex;gap:16px}
.footer-links a{color:#53616b;font-size:10px;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}
.footer-links a:hover{text-decoration-color:var(--gold)}

@media(max-width:900px){
  .wrap{padding:0 25px}.site-nav{height:76px;padding:0 25px}.nav-logo-img{width:190px}.nav-links{display:none}.nav-hamburger{display:block}
  .division-grid,.appetite-layout,.steps,.approach,.ethos-grid,.ethos-grid.grid-2,.contact-grid,.reg-grid,.legal-layout{grid-template-columns:1fr}
  .division+.division,.step,.approach-item,.ethos-item,.team-card,.contact-card,.reg-card{border-right:0;border-left:0;border-bottom:1px solid var(--navy)}
  .division:last-child,.step:last-child,.approach-item:last-child,.ethos-item:last-child,.team-card:last-child,.contact-card:last-child,.reg-card:last-child{border-bottom:0}
  .legal-toc{position:static;display:flex;flex-wrap:wrap;gap:5px 16px}.legal-toc h4{width:100%}.legal-toc a{padding:4px 0;border-left:0}
}
@media(max-width:650px){
  .home-hero{padding-top:38px}.home-hero h1{font-size:50px}.featured-head{align-items:baseline;margin-top:40px}.featured-head h2{font-size:22px}
  .home-products{grid-template-columns:1fr}.home-card:first-child{border-right:0;border-bottom:1px solid var(--navy)}
  .home-contact-line{display:block}.home-contact-line a{display:inline-block;margin-top:8px}
  .credibility{grid-template-columns:1fr}.proof+.proof{padding-left:0;border-left:0}
  .page-hero{padding:42px 0 38px}.page-hero h1{font-size:44px}
  .section,.section.white,.section.cream,.section.navy{padding:42px 0}
  .appetite-group ul{columns:1}.team-grid,.tick-list,.cta-panel{grid-template-columns:1fr}
  .simple-contact{display:block}.simple-contact a{display:inline-block;margin-top:7px}
  .team-card{border-right:0;border-bottom:1px solid var(--navy)}.team-card:last-child{border-bottom:0}
  .footer-bottom{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}
  .fact-table,.fact-table tbody,.fact-table tr,.fact-table td{display:block;width:100%}.fact-table td:first-child{width:100%;padding-bottom:0;border-bottom:0}
}
