/* CALEGAL.NET V33 — refined light professional redesign. No alterations to business content or app logic. */
:root{--cl33-bg:#fff;--cl33-cream:#f8f6f1;--cl33-warm:#f2efe8;--cl33-navy:#1b3345;--cl33-ink:#223744;--cl33-muted:#506674;--cl33-line:#e1e6e7;--cl33-accent:#a67d4c;--cl33-cta:#1e445b}
body.calegal-site{background:#fff;color:var(--cl33-ink);font-size:16px;line-height:1.75;letter-spacing:-.012em;overflow-x:hidden}
body.calegal-site .cl15-container{max-width:1220px;width:calc(100% - 64px);margin-inline:auto}
body.calegal-site :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid #bf9866!important;outline-offset:3px}
/* Header: clean white presentation, tidy proportions, readable navigation. */
body.calegal-site .site-topbar{background:#f5f3ef!important;border-bottom:1px solid #e9e7e2;color:#536573!important;box-shadow:none}
body.calegal-site .site-topbar-inner{min-height:35px;padding:5px 0}
body.calegal-site .site-topbar-left,body.calegal-site .cl15-topbar-location{font-size:11.5px;color:#65747b!important;font-weight:450}
body.calegal-site .site-topbar-actions{gap:17px}
body.calegal-site .site-topbar-actions a{color:#475b68!important;font-size:12px!important;font-weight:500!important}
body.calegal-site .site-topbar-actions a:hover{color:#8b6740!important}
body.calegal-site .site-header{background:#fff!important;border-bottom:1px solid #e3e7e8!important;box-shadow:0 4px 16px rgba(30,53,68,.04)!important}
body.calegal-site .site-header .site-navbar{min-height:80px;padding:11px 0;gap:20px}
body.calegal-site .site-header .site-brand{max-width:213px;flex:0 0 auto}
body.calegal-site .site-header .site-brand img{width:204px;max-width:100%;height:auto;mix-blend-mode:normal}
body.calegal-site .site-header .site-nav-list{gap:1px}
body.calegal-site .site-header .site-nav-list .nav-link,body.calegal-site .site-header .site-nav-list .site-nav-label{font-size:14.5px!important;font-weight:480!important;color:#2b4050!important;letter-spacing:-.02em;border-radius:6px!important;padding:11px 7px!important}
body.calegal-site .site-header .site-nav-list :is(.nav-link,.site-nav-label):hover{background:#f3f6f7!important;color:#173c55!important}
body.calegal-site .site-header .site-dropdown-menu{border:1px solid #e2e8e9!important;border-top:2px solid #b39468!important;border-radius:9px!important;background:#fff!important;box-shadow:0 15px 44px rgba(20,42,61,.12)!important;padding:7px!important;min-width:215px}
body.calegal-site .site-header .site-dropdown-menu .dropdown-item{padding:11px 12px!important;border-radius:5px;color:#314959!important;font-size:14px}
body.calegal-site .site-header .site-dropdown-menu .dropdown-item:hover{background:#f6f3ed!important;color:#1b425a!important}
/* Home hero: visually balanced, image always visible; no empty oversized graphic panel. */
body.page-home .site-main,body.page-home .cl15-home{background:#fff!important}
body.page-home .cl15-home :is(h1,h2,h3){color:var(--cl33-navy)!important;letter-spacing:-.043em}
body.page-home .cl15-hero{background:linear-gradient(105deg,#f8f6f1 0%,#fff 65%,#f7faf9 100%)!important;border-bottom:1px solid #e9e9e5}
body.page-home .cl15-hero-grid{display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:clamp(25px,3.8vw,58px);align-items:center;padding:56px 0 65px;max-width:1220px}
body.page-home .cl15-hero-copy{padding:0;min-width:0}
body.page-home .cl15-label{color:#9a7248;font-size:12px;letter-spacing:.04em;font-weight:680;margin:0 0 14px}
body.page-home .cl15-hero h1{font-size:clamp(43px,4.45vw,60px);line-height:1.22;font-weight:690;margin:0 0 12px}
body.page-home .cl15-hero-lead{font-size:clamp(21px,2.2vw,29px);line-height:1.55!important;font-weight:520;color:#2e4a5b;margin:0 0 17px;word-break:keep-all}
body.page-home .cl15-hero-text{max-width:530px;color:#516a78;font-size:15px;line-height:1.85;margin:0 0 27px;word-break:keep-all}
body.page-home .cl15-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 25px}
body.page-home .cl15-btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:47px;padding:11px 20px;border-radius:7px;font-weight:620;font-size:13.5px;box-shadow:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
body.page-home .cl15-btn-primary{background:#1c455e;border:1px solid #1c455e;color:#fff}
body.page-home .cl15-btn-primary:hover{background:#2b5871;border-color:#2b5871;color:#fff}
body.page-home .cl15-btn-outline{background:#fff;border:1px solid #c9d3d9;color:#264657}
body.page-home .cl15-btn-outline:hover{background:#edf2f4;color:#1c394c}
body.page-home .cl15-hero-meta{color:#70818b;font-size:12px;gap:12px 18px}
body.page-home .cl15-hero-meta span+span{padding-left:18px;border-color:#d8dedf}
body.page-home .cl15-hero-visual{position:relative;aspect-ratio:1.34/1;max-height:none;min-height:0;border-radius:14px!important;overflow:hidden;background:#203a50!important;box-shadow:0 16px 40px rgba(27,50,63,.13)!important;isolation:isolate}
body.page-home .cl15-hero-visual>img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;display:block!important;object-fit:cover!important;object-position:44% center;opacity:1!important;filter:none!important;z-index:0}
body.page-home .cl15-hero-visual::after{content:"";display:block!important;position:absolute;inset:0;background:linear-gradient(90deg,transparent 28%,rgba(11,28,42,.06) 48%,rgba(10,27,42,.54) 100%)!important;z-index:1;pointer-events:none}
body.page-home .cl16-hero-overlay{position:absolute;inset:auto 0 0 auto;width:80%;min-height:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;text-align:right;background:transparent!important;backdrop-filter:none!important;border:0!important;padding:25px 26px 24px;color:#fff;z-index:2}
body.page-home .cl16-hero-eyebrow{font-size:11px;color:#f0d6ae;letter-spacing:.09em;margin:0 0 7px;text-shadow:0 1px 5px rgba(0,0,0,.5)}
body.page-home .cl16-hero-statement{font-size:clamp(22px,2.2vw,30px);color:#fff!important;font-weight:480!important;line-height:1.4;letter-spacing:-.04em;text-shadow:0 1px 8px rgba(0,0,0,.65)}
body.page-home .cl16-hero-rule{background:#deb982;width:37px;height:2px;margin:13px 0 8px}
body.page-home .cl16-hero-detail{font-size:11px;color:#f6f2eb;letter-spacing:0;text-shadow:0 1px 5px rgba(0,0,0,.6)}
/* Quick links: easily scanned, less visual noise. */
body.page-home .cl15-quick{background:#fff;border-bottom:1px solid var(--cl33-line)}
body.page-home .cl15-quick-list{max-width:1220px}
body.page-home .cl15-quick-list a{min-height:64px;padding:17px 15px;color:#29495c;font-size:13px;font-weight:630;border-color:#e3e9e9!important}
body.page-home .cl15-quick-list a:hover{background:#f5f8f8;color:#1b3f54}
body.page-home .cl15-quick-list span{color:#ac855a}
/* Four refined, readable service cards retain all descriptions and links. */
body.page-home .cl15-section{padding:64px 0}
body.page-home .cl15-section-head{margin-bottom:26px;gap:24px}
body.page-home .cl15-section-head h2,body.page-home .cl15-guide h2,body.page-home .cl15-about h2,body.page-home .cl15-faq-intro h2{font-size:clamp(28px,2.75vw,38px);font-weight:660;line-height:1.35}
body.page-home .cl15-section-head>p{color:#627581;font-size:13.5px;line-height:1.7}
body.page-home .cl15-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
body.page-home .cl15-card{min-height:258px;grid-template-columns:25px minmax(0,1fr) 115px;align-items:start;gap:12px;padding:26px;border:1px solid #e2e8e9!important;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(32,53,64,.04);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
body.page-home .cl15-card:hover,body.page-home .cl15-card:focus-within{border-color:#c8d6d9!important;box-shadow:0 12px 30px rgba(32,53,64,.085);transform:translateY(-2px)}
body.page-home .cl15-card-index{font-size:12px;color:#a78558;font-weight:650;padding-top:5px}
body.page-home .cl15-card-eyebrow{font-size:11.5px;color:#72828b;margin:0 0 4px}
body.page-home .cl15-card h3{font-size:23px;line-height:1.3;font-weight:690;margin:0 0 11px}
body.page-home .cl15-card h3 a{color:#203b4d}
body.page-home .cl15-card-description{color:#516a77;font-size:13px;line-height:1.8}
body.page-home .cl15-card-description p{line-height:1.85;margin:0 0 13px}
body.page-home .cl15-card-description a{color:#3a6179;text-decoration-color:#c9dbe1}
body.page-home .cl15-card-image{width:115px;height:110px;border-radius:7px;background:#e9edef;overflow:hidden;filter:none}
body.page-home .cl15-card-image img{width:100%;height:100%;object-fit:cover}
body.page-home .cl15-text-link{color:#235370;font-size:13px;font-weight:680;gap:10px}
body.page-home .cl15-text-link:hover{color:#9a7349}
/* Supporting sections: simple structure, not extra-large editorial gaps. */
body.page-home .cl15-guide{background:#f7f6f3;padding:57px 0;border-block:1px solid #e9e8e3}
body.page-home .cl15-guide-grid{grid-template-columns:minmax(220px,.68fr) minmax(0,1.32fr);gap:38px}
body.page-home .cl15-guide-heading>p:last-child{color:#59707c;font-size:14px}
body.page-home .cl15-guide-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
body.page-home .cl15-guide-steps>div{background:#fff;border:1px solid #e3e7e7;border-radius:9px;padding:22px}
body.page-home .cl15-guide-steps span{color:#a17c50;font-weight:720}
body.page-home .cl15-guide-steps strong{color:#1f4055;font-size:16px}
body.page-home .cl15-guide-steps p{color:#5d7280;font-size:12.5px}
body.page-home .cl15-about{background:#fff;border-color:#e8ebeb}
body.page-home .cl15-about-grid{gap:65px}
body.page-home .cl15-about-copy{color:#506774;font-size:14.5px}
body.page-home .cl15-faq-section{background:#fbfcfb}
body.page-home .cl15-faq-grid{gap:50px}
body.page-home .cl15-faq-list{border-color:#cbd8da}
body.page-home .cl15-faq{border-color:#dfe6e7}
body.page-home .cl15-faq summary{font-weight:610;color:#274a5e;padding:17px 3px;font-size:14.5px}
body.page-home .cl15-faq summary:hover{color:#956d45}
body.page-home .cl15-faq-answer{color:#506977;font-size:14px}
body.page-home .cl15-contact-cta{background:#f2f4f3;border-top:1px solid #dde5e5;color:#1d394b;padding:39px 0}
body.page-home .cl15-contact-cta .cl15-label{color:#9a744c}
body.page-home .cl15-contact-cta h2{color:#1c384a!important;font-size:26px;font-weight:690}
body.page-home .cl15-contact-cta p:not(.cl15-label){color:#516875}
body.page-home .cl15-btn-white{background:#1f485f;border:1px solid #1f485f;color:#fff!important}
body.page-home .cl15-btn-white:hover{background:#2a5b76;color:#fff!important}
body.page-home .cl15-cta-phone{color:#1a485f!important;font-weight:660;font-size:15px}
/* Internal pages: quieter light hero, readable body with no heavy dark banners. */
body.page-public.page-inner .site-main{background:#f8faf9;padding-bottom:57px}
body.page-public.page-inner .ca-premium-hero{min-height:205px;background:#edf2f2;color:#18394d;border-bottom:1px solid #dee6e7}
body.page-public.page-inner .ca-premium-hero-image{width:65%;left:auto;right:0;opacity:.26;filter:saturate(.7);z-index:-2}
body.page-public.page-inner .ca-premium-hero:after{background:linear-gradient(90deg,#edf2f2 0%,rgba(237,242,242,.97) 50%,rgba(237,242,242,.64) 100%);z-index:-1}
body.page-public.page-inner .ca-premium-hero-inner{max-width:1220px;padding:44px 0}
body.page-public.page-inner .ca-premium-hero-kicker{color:#9b7851;font-size:11.5px;letter-spacing:.06em;font-weight:620}
body.page-public.page-inner .ca-premium-hero-title{color:#18384c;font-size:clamp(29px,3.1vw,40px);font-weight:690}
body.page-public.page-inner .ca-premium-hero-subtitle{color:#526976;font-size:14px}
body.page-public.page-inner .site-main>.container{max-width:1220px;margin:23px auto 0;background:#fff;border:1px solid #e3e8e8;border-radius:10px;padding:clamp(25px,3.4vw,42px);box-shadow:0 6px 25px rgba(25,52,68,.035)}
body.page-public.page-inner .site-main>.container :is(h1,h2,h3){color:#21475c}
body.page-public.page-inner .site-main>.container :is(p,li){line-height:1.85}
/* Footer: bright with three readable columns and clear contact hierarchy. */
body.calegal-site .cl15-footer{background:#f7f6f2!important;color:#2b4554!important;border-top:1px solid #e1e7e8;padding:49px 0 24px}
body.calegal-site .cl15-footer-top{gap:clamp(25px,4vw,56px)}
body.calegal-site .cl15-footer-small{color:#9b7650!important;font-size:11.5px}
body.calegal-site .cl15-footer h2{color:#1e3d50!important;font-size:26px;font-weight:720}
body.calegal-site .cl15-footer h3{color:#2c4a5b!important;font-size:14px;font-weight:680}
body.calegal-site .cl15-footer p{color:#61717b!important;font-size:13px;line-height:1.8}
body.calegal-site .cl15-footer a{color:#37576a!important;text-decoration:none}
body.calegal-site .cl15-footer a:hover{color:#936d46!important}
body.calegal-site .cl15-footer-menu nav{gap:7px 14px}
body.calegal-site .cl15-footer-menu nav a{font-size:13px;line-height:1.7}
body.calegal-site .cl15-footer-office .cl31-office-phone a{font-size:18px;font-weight:640;color:#1f455b!important}
body.calegal-site .cl15-footer-bottom{border-top:1px solid #e2e5e3!important;padding-top:18px;margin-top:29px}
body.calegal-site .cl15-footer-bottom p{color:#839099!important;font-size:11px}
/* Smaller desktops / tablets. */
@media(max-width:1199.98px){
 body.calegal-site .site-header .site-brand{max-width:178px}
 body.calegal-site .site-header .site-brand img{width:178px}
 body.calegal-site .site-header .site-nav-list .nav-link,body.calegal-site .site-header .site-nav-list .site-nav-label{font-size:13.5px!important;padding:10px 5px!important}
 body.page-home .cl15-card{grid-template-columns:24px minmax(0,1fr) 100px;padding:24px}
 body.page-home .cl15-card-image{width:100px;height:100px}
 body.page-home .cl15-guide-grid{grid-template-columns:1fr;gap:25px}
}
@media(max-width:991.98px){
 body.calegal-site .site-header .site-navbar{flex-wrap:wrap;min-height:72px}
 body.calegal-site .site-header .site-nav-collapse{flex-basis:100%;width:100%;max-height:74vh;overflow-y:auto;padding-top:10px}
 body.calegal-site .site-header .site-nav-list{flex-direction:column;align-items:stretch;gap:0;width:100%}
 body.calegal-site .site-header .site-nav-list>.nav-item{width:100%}
 body.calegal-site .site-header .site-nav-pair{display:flex;justify-content:space-between;width:100%}
 body.calegal-site .site-header .site-nav-list .nav-link,body.calegal-site .site-header .site-nav-list .site-nav-label{font-size:16px!important;padding:13px 12px!important}
 body.calegal-site .site-header .site-submenu-toggle{width:44px;flex:0 0 44px;min-height:44px}
 body.calegal-site .site-header .site-dropdown-menu{box-shadow:none!important;position:static!important;max-width:none;width:100%;min-width:0}
 body.page-home .cl15-hero-grid{grid-template-columns:1fr;gap:25px;padding:43px 0 48px}
 body.page-home .cl15-hero-visual{aspect-ratio:1.78/1;max-height:none}
 body.page-home .cl15-guide-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
 body.page-home .cl15-about-grid,body.page-home .cl15-faq-grid{grid-template-columns:1fr;gap:28px}
 body.calegal-site .cl15-footer-top{grid-template-columns:1fr 1fr;gap:25px}
 body.calegal-site .cl15-footer-identity{grid-column:1/-1}
}
@media(max-width:720px){
 body.calegal-site .cl15-container,body.page-public.page-inner .ca-premium-hero-inner,body.page-public.page-inner .site-main>.container{width:calc(100% - 36px)}
 body.calegal-site .site-topbar-inner{flex-direction:column;align-items:flex-start;gap:4px;padding:7px 0}
 body.calegal-site .site-topbar-actions{gap:7px 14px;flex-wrap:wrap}
 body.calegal-site .site-header .site-brand,body.calegal-site .site-header .site-brand img{width:175px;max-width:175px}
 body.page-home .cl15-hero-grid{padding:36px 0 39px;gap:27px}
 body.page-home .cl15-hero h1{font-size:40px}
 body.page-home .cl15-hero-lead{font-size:21px}
 body.page-home .cl15-hero-visual{aspect-ratio:1.5/1}
 body.page-home .cl16-hero-overlay{padding:16px 16px 14px;width:88%}
 body.page-home .cl16-hero-statement{font-size:clamp(18px,4.7vw,25px)}
 body.page-home .cl16-hero-rule{margin:9px 0 6px}
 body.page-home .cl16-hero-detail{font-size:10px;white-space:normal}
 body.page-home .cl15-quick-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.page-home .cl15-quick-list a{min-height:62px;padding:12px 13px;font-size:12.5px}
 body.page-home .cl15-section{padding:47px 0}
 body.page-home .cl15-section-head{display:block;margin-bottom:22px}
 body.page-home .cl15-section-head>p{margin-top:10px}
 body.page-home .cl15-service-grid{grid-template-columns:1fr;gap:13px}
 body.page-home .cl15-card{min-height:0;grid-template-columns:23px minmax(0,1fr) 102px;gap:10px;padding:23px}
 body.page-home .cl15-card-image{width:102px;height:93px}
 body.page-home .cl15-guide{padding:46px 0}
 body.page-home .cl15-guide-steps{grid-template-columns:1fr}
 body.page-home .cl15-guide-steps>div{padding:19px}
 body.page-home .cl15-cta-grid{flex-direction:column;align-items:flex-start;gap:18px}
 body.page-public.page-inner .ca-premium-hero{min-height:175px}
 body.page-public.page-inner .ca-premium-hero-image{width:70%;opacity:.23}
 body.page-public.page-inner .ca-premium-hero-inner{padding:33px 0}
 body.page-public.page-inner .site-main>.container{margin-top:16px;padding:23px 20px}
 body.calegal-site .cl15-footer{padding:44px 0 23px}
 body.calegal-site .cl15-footer-top{grid-template-columns:1fr;gap:25px}
 body.calegal-site .cl15-footer-identity{grid-column:auto}
 body.calegal-site .cl15-footer-bottom{display:block}
}
@media(max-width:460px){
 body.page-home .cl15-card{grid-template-columns:20px minmax(0,1fr);padding:20px}
 body.page-home .cl15-card-image{display:none}
 body.page-home .cl15-hero-actions{align-items:stretch}
 body.page-home .cl15-btn{width:100%}
 body.page-home .cl15-hero-visual{aspect-ratio:1.24/1}
 body.page-home .cl16-hero-overlay{width:96%}
}
@media(prefers-reduced-motion:reduce){body.calegal-site a,body.page-home .cl15-card,body.page-home .cl15-btn{transition:none!important;transform:none!important}}
