/* Nidavitae — photographic identity, shared by every generated page. */
:root{--primary:#126187;--primary-hover:#0C4A6A;--primary-press:#0C4A6A;--primary-soft:#EAF2F5;--secondary:#102C46;--dark:#0B2034;--text:#183247;--muted:#506272;--surface-alt:#F4F7F8;--border:#DAE4E9;--accent:#347E9E;--accent-light:#A8D4E5;--focus:#126187;--max:1280px}
body{background:#fff}
h1,h2{font-weight:600;letter-spacing:-.035em}
h1{line-height:1.1}h2{line-height:1.16}
.logo .brand-logo{width:216px;height:auto;max-width:100%;object-fit:contain}
.footer .logo .brand-logo{width:238px}
.header{background:rgba(255,255,255,.98)}
.header__bar{min-height:80px}
.btn{border-radius:12px;font-weight:600;transition:background .18s,color .18s,transform .18s}
.btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}
.btn--primary:hover{background:var(--primary-hover);color:#fff}
.btn--secondary{border-color:var(--primary);color:var(--primary)}
.hero{background:#F1F5F7;padding:64px 0 96px}
.hero__grid{gap:64px;grid-template-columns:1.1fr 1fr}
.hero h1{font-size:clamp(2.6rem,4vw,3.9rem);max-width:15ch}
.hero__lead{font-size:19px;line-height:1.75;max-width:54ch}
.hero__visual{padding:0;max-width:580px}
.hero__visual .ph--main{width:100%;margin:0;border:0;aspect-ratio:4/5;border-radius:28px;box-shadow:none}
.hero__visual::before,.hero__visual::after{display:none}
.hero .badge{background:transparent;padding-left:0;color:var(--primary-press);letter-spacing:.03em}
.hero__trust .ic{color:var(--primary)}
.ph.media{display:block;position:relative;overflow:hidden;background:#E8EFF2;isolation:isolate}
.media>img.photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block;transition:transform .5s ease}
.media .svc__tag{position:absolute;left:18px;bottom:18px;top:auto;z-index:2;background:rgba(255,255,255,.96);color:var(--secondary);border:0}
.svc:hover .media>img,.bcard:hover .media>img{transform:scale(1.025)}
.about__visual .media{border:0;box-shadow:none}
.split .ph.media,.phero__media.ph.media,.phero__media .ph.media{border:0;box-shadow:none;border-radius:24px}
.shero{background-color:#F3F6F8;background-image:linear-gradient(90deg,rgba(244,247,248,.97),rgba(244,247,248,.88)),url('/img/editorial/fundo-luz-1440.webp');background-position:center;background-size:cover}
.shero__grid{gap:56px;align-items:start}
.shero h1{font-size:clamp(2.4rem,3.8vw,3.4rem)}
.shero__q{background:transparent;color:var(--primary-press);padding:0;font-size:14px}
.shero .bens{gap:18px;margin-top:24px}
.fcard{background:#fff;border:1px solid #D5E1E8;border-radius:24px;box-shadow:0 18px 50px rgba(16,44,70,.06)}
.fcard__t{font-weight:600;line-height:1.3}
.fields input:not([type=checkbox]),.fields select,.fields textarea{background:#FAFCFD;border-color:#C7D4DE;border-radius:9px}
.field label{line-height:1.4}
.fcard .fields{gap:14px}.fcard .field label{font-size:14px}
.fcard__foot{font-size:12px}
.sec{padding-top:80px;padding-bottom:80px}
.sec-top{gap:48px;margin-bottom:36px}.sec-top p{font-size:18px}
.scard,.vcard,.pain,.sit,.bcard,.lcard{border-color:#DEE6EB}
.scard:hover,.bcard:hover{border-color:#9DB8C9}
.scard__ic{background:var(--primary-soft);color:var(--primary);border-radius:14px}
.scard__tag{font-size:11px;letter-spacing:.08em}
.bcard{overflow:hidden}.bcard__b{padding:26px}
.imgband{gap:24px}.imgband .ph.media{aspect-ratio:4/3;border-radius:20px}
.imgband .cap{font-size:14px;line-height:1.6;padding:0 2px}
.ahero{background:#F3F6F8}.ahero h1{font-weight:600;line-height:1.14}
.ahero__img .ph.media{aspect-ratio:21/9}.ahero__img .photo{object-position:center 43%}
.prose{font-size:18px;line-height:1.85}.prose p{max-width:none}
.prose h2{font-size:clamp(1.75rem,2.6vw,2.35rem)}
.toc{border-radius:18px}.toc a{line-height:1.5}
.cta-band{background-color:var(--secondary);background-image:linear-gradient(90deg,rgba(16,44,70,.98),rgba(16,44,70,.91)),url('/img/editorial/fundo-luz-1440.webp');background-size:cover;background-position:center;border-radius:24px}
.cta-band .btn--primary{background:#fff;color:var(--secondary);border-color:#fff}.cta-band .btn--primary:hover{background:#E5EFF4}
.faq details{border-color:#DAE4EA}.faq summary{font-weight:600;line-height:1.5}
.faq__a{line-height:1.8}
.news{background:#EFF5F7;border:1px solid #D7E4EA}
.footer{background:#0B2034}.fcta{background:#142F46}
.sticky-cta{border-radius:12px;box-shadow:none!important}
@media(min-width:1024px){.hero .btn-row{flex-wrap:wrap}.hero .btn{padding-inline:24px}.shero .fcard{margin-top:0}}
@media(max-width:1023px){.hero__grid{grid-template-columns:1fr;gap:36px}.hero__visual{max-width:none;width:100%}.hero__visual .ph--main{aspect-ratio:16/9}.hero h1{max-width:20ch}.hero__lead{max-width:none}.shero__grid{gap:28px}.sec{padding-top:60px;padding-bottom:60px}.logo .brand-logo{width:196px}}
@media(max-width:767px){
 .header__bar{min-height:72px}.logo .brand-logo{width:180px}
 .hero{padding:32px 0 48px}.hero__grid{gap:28px}.hero h1{font-size:36px;max-width:none;letter-spacing:-.035em}
 .hero__lead{font-size:17px;line-height:1.65;margin-top:20px}.hero .btn-row{margin-top:24px;gap:12px}
 .hero__visual{display:block}.hero__visual .ph--main{aspect-ratio:5/4;border-radius:20px;max-height:400px}
 .hero__trust{gap:10px 16px;font-size:12px;margin-top:20px}
 .hero .btn{width:100%;min-height:54px;font-size:15px}
 .shero{padding-bottom:40px}.shero__grid{gap:24px;margin-top:20px}
 .shero h1{font-size:32px!important;margin-top:12px!important;line-height:1.13}
 .shero .lead-p{font-size:19px!important;line-height:1.4!important}
 .shero__lead{font-size:16px;line-height:1.6;margin-top:12px}
 .shero .bens{display:none}.shero__q{font-size:13px}
 .fcard{padding:22px;border-radius:20px}.fcard__t{font-size:20px}.fcard__s{font-size:14px;line-height:1.5}
 .sec{padding-top:48px;padding-bottom:48px}.sec-top{gap:18px;margin-bottom:28px}
 .sec-top p{font-size:16px}.sec h2{font-size:28px;line-height:1.2}
 .split .ph.media{border-radius:18px}.imgband{gap:28px}.imgband .ph.media{aspect-ratio:16/10}
 .ahero h1{font-size:32px!important}.ahero__img .ph.media{aspect-ratio:4/3}
 .prose{font-size:17px;line-height:1.8}.prose h2{font-size:27px}
 .cta-band{gap:24px;padding:28px 24px}.cta-band h2{font-size:26px}.cta-band p{font-size:16px}
 .fcols{gap:28px 18px}.faq summary{font-size:16px}.faq__a{font-size:16px}
 .sticky-cta{left:16px;right:16px;bottom:12px;width:auto;min-height:54px;font-size:15px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.avatar{background:var(--primary-soft)}.avatar img{width:70%;height:70%;margin:15%;object-fit:contain}
@media(max-width:767px){.hero__trust{display:flex;flex-wrap:wrap}.hero__trust li{font-size:12px}.shero__q{border:0}.shero{padding-top:28px}}

/* Prevent a long article index or CTA from widening the sidebar. */
.aside,.toc,.side-cta{min-width:0;max-width:100%}.toc a{grid-template-columns:28px minmax(0,1fr);overflow-wrap:anywhere}.side-cta .btn{white-space:normal;text-align:center;padding:14px 18px;line-height:1.45;height:auto}

@media(min-width:1024px){.shero__grid>div:first-child{grid-column:1;grid-row:1}.shero__grid>.fcard{grid-column:2;grid-row:1 / span 2}.shero__grid>.hero-benefits{grid-column:1;grid-row:2;margin-top:-30px}.shero__grid{row-gap:16px}}
@media(max-width:1023px){.hero-benefits{order:3}}
@media(max-width:767px){.hero-benefits .bens{display:grid;gap:18px;margin-top:0}.hero-benefits{padding-top:4px}}

@media(min-width:1024px){.shero__grid{grid-template-rows:min-content 1fr}.shero__grid>.hero-benefits{margin-top:0}}

/* Home: full-bleed abstract art, no portrait beside the headline. */
.hero.hero--abstract{isolation:isolate;background-color:#EDF4FA;background-image:linear-gradient(90deg,rgba(248,251,254,.90) 0%,rgba(248,251,254,.76) 40%,rgba(248,251,254,.08) 72%,rgba(248,251,254,0) 100%),url('/img/hero/abstract-nest-1920.webp');background-size:cover;background-position:center right;padding:80px 0 152px}
.hero--abstract .hero__grid{display:block}
.hero--abstract .hero__content{max-width:820px;position:relative;z-index:1}
.hero--abstract h1{font-size:clamp(38px,4.45vw,64px);max-width:22ch;line-height:1.08;letter-spacing:-.045em}
.hero--abstract .hero__lead{max-width:650px;font-size:19px;line-height:1.75;margin-top:28px}
.hero--abstract .btn-row{margin-top:32px;gap:14px}
.hero--abstract .btn--secondary{background:rgba(255,255,255,.80)}
.hero--abstract .badge{font-size:13px;letter-spacing:.045em;font-weight:600}
.hero--abstract .chips{flex-wrap:wrap;gap:10px 20px;margin-top:30px}
.hero--abstract .chips li{padding:0;border:0;box-shadow:none;background:transparent;font-size:13px;gap:8px}
.hero--abstract .chip__ic{background:transparent;color:var(--primary);width:21px;height:21px}
.hero--abstract .chip__ic .ic{width:18px;height:18px}
@media(min-width:1800px){.hero.hero--abstract{background-size:100% auto}}
@media(max-width:1023px){.hero.hero--abstract{padding:60px 0 136px;background-position:60% center}.hero--abstract .hero__content{max-width:700px}.hero--abstract h1{font-size:52px}.hero--abstract .hero__lead{max-width:600px}}
@media(max-width:767px){
.hero.hero--abstract{padding:40px 0 60px;background-image:linear-gradient(155deg,rgba(247,250,254,.97) 0%,rgba(247,250,254,.93) 43%,rgba(247,250,254,.74) 73%,rgba(247,250,254,.36) 100%),url('/img/hero/abstract-nest-960.webp');background-size:cover,auto 580px;background-position:center,62% bottom;background-repeat:no-repeat}
.hero--abstract h1{font-size:38px;max-width:none;line-height:1.12;letter-spacing:-.04em;margin-top:20px!important}
.hero--abstract .hero__lead{font-size:17px;line-height:1.65;margin-top:22px}
.hero--abstract .btn-row{margin-top:26px;gap:12px}.hero--abstract .btn{min-height:56px}
.hero--abstract .chips{gap:12px;margin-top:26px;display:grid}.hero--abstract .chips li{font-size:12px}
}
@media(max-width:359px){.hero--abstract h1{font-size:33px}.hero--abstract .hero__lead{font-size:16px}}
/* Keep the home sections beneath the hero within narrow tablet/phone widths. */
@media(max-width:1023px){.quick__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick__card{min-width:0;grid-template-columns:1fr}.quick__card .btn{grid-column:1;white-space:normal;text-align:center;height:auto;min-height:56px;padding:14px 18px;line-height:1.45}.about__grid{grid-template-columns:minmax(0,1fr)}.about__grid>*{min-width:0}.band{overflow:hidden}}
@media(max-width:767px){.quick__grid{grid-template-columns:minmax(0,1fr)}.about__visual .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.about__visual .stat{min-width:0}.about__visual .stat strong{font-size:1.6rem}.about__visual .source{overflow-wrap:anywhere}}

/* Every inner-page hero shares the abstract visual identity, by subject. */
.hero-art{--hero-art:url('/img/hero/abstract-nest-1920.webp');background-color:#edf4fa;background-image:linear-gradient(90deg,rgba(248,251,254,.97) 0%,rgba(248,251,254,.92) 40%,rgba(248,251,254,.62) 67%,rgba(248,251,254,.12) 100%),var(--hero-art);background-size:cover;background-position:center right;isolation:isolate;border-bottom:1px solid #dce7f0;padding-top:48px;padding-bottom:64px}
.hero-art--crystal{--hero-art:url('/img/hero/abstract-crystal-1920.webp')}
.hero-art--pathways{--hero-art:url('/img/hero/abstract-pathways-1920.webp')}
.hero-art h1{color:var(--secondary);text-wrap:balance}
.hero-art .shero__lead,.hero-art .phero__lead{color:#3f566a}
.hero-art .bens .d{color:#3f566a}
.hero-art .fcard{background:rgba(255,255,255,.97)}
.hero-art .startcard{background:#102c46}
.hero-art.phero .phero__lead{max-width:820px}
.hero-art.phero h1{max-width:900px}
.hero-art--open .shero__grid,.hero-art .contact-hero{display:block}
.hero-art--open .shero__grid>div,.hero-art .contact-hero>div{max-width:790px}
.hero-art.phero--center{text-align:left}
.hero-art.phero--center .phero__lead{margin-left:0;max-width:800px}
.hero-art.phero--center .btn-row,.hero-art.phero--center .chips,.hero-art.phero--center .meta-row{justify-content:flex-start!important}
.hero-art.phero--center h1{max-width:900px}
.hero-art.ahero{background-image:linear-gradient(90deg,rgba(248,251,254,.97),rgba(248,251,254,.94) 50%,rgba(248,251,254,.60) 80%,rgba(248,251,254,.25)),var(--hero-art)}
.hero-art .byline{color:#3f566a}
@media(max-width:1023px){.hero-art{background-position:65% top}.hero-art .shero__grid,.hero-art .bhero__grid{gap:32px}}
@media(max-width:767px){
 .hero-art{--hero-art:url('/img/hero/abstract-nest-960.webp');padding-top:28px;padding-bottom:40px;background-image:linear-gradient(155deg,rgba(248,251,254,.96),rgba(248,251,254,.90) 40%,rgba(248,251,254,.70) 75%,rgba(248,251,254,.48)),var(--hero-art);background-size:cover,auto 780px;background-position:center,65% top;background-repeat:no-repeat}
 .hero-art--crystal{--hero-art:url('/img/hero/abstract-crystal-960.webp')}
 .hero-art--pathways{--hero-art:url('/img/hero/abstract-pathways-960.webp')}
 .hero-art.ahero{background-image:linear-gradient(155deg,rgba(248,251,254,.97),rgba(248,251,254,.92) 55%,rgba(248,251,254,.68)),var(--hero-art)}
 .hero-art h1{overflow-wrap:break-word}.hero-art .contact-hero{margin-top:16px!important}
}
