@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#112928;--paper:#f5f7f6;--accent:#136652;--muted:#5b6d69;--line:#d5dfdb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Inter',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #e59240;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Inter',Arial,sans-serif}header{height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 6vw}.brand{font-family:'Inter',Arial,sans-serif;font-size:36px;font-weight:800;letter-spacing:-2px;line-height:1}.brand small{display:block;font-family:'Inter',Arial,sans-serif;letter-spacing:1.5px;font-size:12px;font-weight:500;margin-top:9px;text-transform:uppercase}nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav-contact{border:1px solid var(--ink);padding:10px 22px;border-radius:100px}.eyebrow{font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase}.portal-intro{padding:65px 6vw 45px;display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end}.portal-intro h1{font-size:clamp(38px,4.5vw,66px);line-height:1.13;letter-spacing:-2.5px;margin-top:19px;max-width:850px}.portal-intro p{max-width:370px;color:var(--muted);padding-bottom:5px}.choices{padding:0 6vw 65px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.choice{position:relative;min-height:390px;padding:42px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:4px;transition:transform .25s}.choice:hover{transform:translateY(-5px)}.accounting{background:#103f35;color:#fff}.insurance{background:#12394e;color:#fff}.choice-top{display:flex;justify-content:space-between;align-items:center}.choice-number{font-size:14px;opacity:.65}.choice h2{font-size:clamp(32px,3.8vw,52px);line-height:1.1;letter-spacing:-1.7px;margin:50px 0 20px}.choice p{max-width:360px;color:#dae7e3;font-size:17px}.choice .visit{display:inline-flex;background:#fff;color:#153c33;padding:12px 22px;border-radius:100px;align-self:flex-start;font-size:14px;font-weight:600;margin-top:30px}.insurance .visit{color:#12394e}.choice-mark{font-family:'Inter',Arial,sans-serif;position:absolute;right:30px;top:95px;font-size:145px;line-height:1;font-weight:800;letter-spacing:-10px;opacity:.05;pointer-events:none}.portal-note{padding:0 6vw 55px;display:flex;justify-content:space-between;gap:30px;color:var(--muted);font-size:14px}.portal-note strong{color:var(--ink)}footer{padding:28px 6vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:13px;color:var(--muted)}footer a{text-decoration:underline;text-underline-offset:4px}.service-page{--accent:#136652}.service-page.insurance-page{--ink:#153447;--accent:#235d7b;--muted:#60747f;--line:#d7e0e5;--paper:#f5f7f9}.hero{padding:85px 6vw 75px;display:grid;grid-template-columns:1.4fr .8fr;gap:9vw;align-items:center}.hero h1{font-size:clamp(42px,5.4vw,78px);line-height:1.12;letter-spacing:-3px;margin:22px 0 26px;max-width:850px}.hero p{font-size:19px;max-width:570px;color:var(--muted)}.hero .btn{margin-top:32px}.btn{display:inline-block;border-radius:100px;background:var(--accent);color:#fff;padding:14px 27px;font-size:15px;font-weight:600}.hero-aside{border-top:1px solid var(--accent);padding-top:22px}.hero-aside .large-word{font-size:clamp(42px,4.6vw,64px);font-family:'Inter',Arial,sans-serif;font-weight:500;letter-spacing:-2px;line-height:1.15;padding:25px 0 32px}.hero-aside .aside-foot{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.hero-aside .aside-index{font-size:13px;letter-spacing:1px;color:var(--accent)}.services{padding:70px 6vw;background:white}.section-head{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;margin-bottom:45px}.section-head h2{font-size:clamp(30px,3vw,43px);line-height:1.2;letter-spacing:-1px;margin-top:14px}.section-head p{max-width:460px;color:var(--muted);align-self:end}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 35px}.service{padding:27px 0 33px;border-top:1px solid var(--line)}.service .index{font-size:12px;color:var(--accent);letter-spacing:1px}.service h3{font-size:21px;line-height:1.3;letter-spacing:-.5px;margin:16px 0 12px}.service p{color:var(--muted);font-size:16px;max-width:350px}.approach{padding:75px 6vw;display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.approach h2{font-size:40px;line-height:1.2;letter-spacing:-1px;margin-top:17px}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:40px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}.steps li:first-child{padding-top:0}.steps span{font-size:13px;color:var(--accent);padding-top:5px}.steps h3{font-size:19px;margin-bottom:6px}.steps p{color:var(--muted)}.contact{margin:0 6vw 70px;background:var(--ink);color:white;padding:45px 50px;border-radius:4px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.contact h2{font-size:clamp(30px,3vw,44px);line-height:1.2;letter-spacing:-1px;margin:15px 0 17px}.contact p{color:#d8e5e2;max-width:450px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px}.contact-details .email{font-size:clamp(21px,2.5vw,32px);border-bottom:1px solid #8da7a0;word-break:break-word}.contact-details small{font-size:14px;color:#d8e5e2}.other{padding:25px 6vw 40px;display:flex;gap:25px;justify-content:space-between;font-size:14px;color:var(--muted)}.other a{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.insurance-page .hero-aside .large-word{color:var(--accent)}@media(min-width:1500px){header,.portal-intro,.choices,.portal-note,.hero,.services,.approach,.other,footer{padding-left:max(6vw,calc((100vw - 1400px)/2));padding-right:max(6vw,calc((100vw - 1400px)/2))}}@media(max-width:800px){header{height:auto;min-height:90px;padding:22px 6vw;align-items:flex-start}nav{gap:15px;flex-wrap:wrap;justify-content:flex-end}nav a{font-size:13px}.nav-contact{padding:7px 13px}.brand{font-size:30px}.brand small{font-size:11px}.portal-intro{grid-template-columns:1fr;gap:22px;padding-top:45px}.portal-intro h1{letter-spacing:-1.6px}.choices{grid-template-columns:1fr}.choice{min-height:345px;padding:30px}.choice h2{margin-top:38px}.portal-note{flex-direction:column;gap:14px}.hero{grid-template-columns:1fr;gap:40px;padding-top:50px}.hero h1{letter-spacing:-1.7px}.hero-aside .large-word{font-size:42px}.section-head,.approach,.contact{grid-template-columns:1fr;gap:28px}.service-grid{grid-template-columns:1fr 1fr;gap:0 24px}.contact{padding:30px}.services,.approach{padding-top:50px;padding-bottom:50px}.other{flex-direction:column;gap:12px}}@media(max-width:480px){.service-grid{grid-template-columns:1fr}header nav{max-width:210px;gap:10px 18px}nav .nav-contact{border:0;padding:0}.hero h1{font-size:42px}.portal-intro h1{font-size:39px}.contact{margin-bottom:40px}.approach h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.choice{transition:none}}

/* Official TOC5 brand assets */
.brand{display:inline-flex;flex-direction:column;align-items:flex-start;flex-shrink:0;letter-spacing:0}.brand img{display:block;width:145px;height:auto;object-fit:contain}.brand small{font-size:12px;letter-spacing:1.8px;margin-top:7px}body:not(.service-page) .brand img{width:138px}header{min-height:100px;height:auto;padding-top:15px;padding-bottom:15px}@media(max-width:800px){.brand img{width:108px}body:not(.service-page) .brand img{width:120px}.brand small{font-size:11px}header{min-height:90px}}
/* TOC5: cobalt blue, yellow and deep navy */
:root{--ink:#071f55;--paper:#f4f7fc;--accent:#07379f;--muted:#53647e;--line:#d4deef;--yellow:#ffcc00}.service-page{--accent:#07379f}.service-page.insurance-page{--ink:#071f55;--accent:#07379f;--muted:#53647e;--line:#d4deef;--paper:#f4f7fc}header{background:#fff}.portal-intro{padding-top:70px;padding-bottom:55px}.portal-intro .eyebrow{color:#07379f}.portal-intro h1{font-weight:800}.choice{min-height:415px;border-radius:8px}.accounting{background:#07379f;color:#fff}.insurance{background:#ffcc00;color:#071f55}.accounting p{color:#ecf2ff}.insurance p{color:#183665}.accounting .visit{background:#ffcc00;color:#071f55}.insurance .visit{background:#071f55;color:#fff}.choice-mark{opacity:.07}.choice-number{opacity:.8}.choice:hover{box-shadow:0 15px 35px #071f551f}.hero{position:relative}.hero .eyebrow{color:#07379f}.hero h1{font-weight:800}.hero-aside{border-top:6px solid #ffcc00;padding:26px 28px;background:#e9effb}.hero-aside .large-word{color:#07379f}.insurance-page .hero-aside{background:#ffcc00}.insurance-page .hero-aside .large-word{color:#071f55}.insurance-page .hero-aside .aside-index,.insurance-page .hero-aside .aside-foot{color:#183665}.insurance-page .hero-aside .aside-foot{border-color:#071f5530}.nav-contact{background:#07379f;color:#fff;border-color:#07379f}.nav-contact:hover{background:#071f55}.btn{background:#07379f}.btn:hover{background:#071f55}.services .eyebrow,.approach .eyebrow{color:#07379f}.service .index{display:inline-block;background:#ffcc00;color:#071f55;padding:3px 9px;border-radius:3px;font-weight:700}.steps span{font-weight:700;color:#07379f}.contact{background:#071f55;border-top:6px solid #ffcc00;border-radius:8px}.contact .eyebrow{color:#ffcc00}.contact p,.contact-details small{color:#e2eafa}.contact-details .email{color:#ffcc00;border-color:#ffcc0070}.other a{color:#07379f}.other a:hover,footer a:hover{color:#071f55}a:focus-visible,button:focus-visible{outline-color:#07379f}.choice:focus-visible{outline-offset:7px}.portal-note strong{color:#071f55}footer{background:#fff}@media(max-width:480px){nav .nav-contact{background:none;color:#07379f}.hero-aside{padding:22px}.choice{min-height:350px}}

/* Business areas are the primary entry points. */
.portal-intro{padding-top:48px;padding-bottom:32px;grid-template-columns:1.2fr 1fr;gap:45px}.portal-intro h1{font-size:clamp(32px,3.2vw,46px);line-height:1.18;letter-spacing:-1.4px;margin-top:14px;max-width:700px}.portal-intro p{max-width:410px;font-size:17px}.choices{gap:24px}.choice{min-height:355px;padding:36px 38px}.choice h2{font-size:clamp(32px,3.8vw,54px);line-height:1.15;letter-spacing:-1.8px;font-weight:750;margin:35px 0 20px}.choice-mark{top:100px;font-size:130px;opacity:.04}.choice p{max-width:400px}.choice .visit{margin-top:28px}.choice .eyebrow{letter-spacing:1.7px}.portal-intro .eyebrow{letter-spacing:1.6px}h1,h2{letter-spacing:-1.5px}.hero h1{font-weight:750}.hero-aside .large-word{font-weight:600;letter-spacing:-1.5px}.brand small{font-weight:600}.portal-nav a{font-weight:600}.portal-nav a:hover{text-decoration:underline;text-underline-offset:5px}@media(max-width:800px){.portal-intro{grid-template-columns:1fr;padding-top:35px;gap:18px}.choice{padding:30px;min-height:305px}.choice h2{font-size:clamp(32px,6.5vw,45px);margin-top:25px;letter-spacing:-1.1px}.portal-nav{gap:15px}.portal-intro h1{font-size:34px;letter-spacing:-1px}}@media(max-width:480px){.portal-intro h1{font-size:31px}.portal-nav{max-width:190px}.portal-nav a{font-size:13px}.choice h2{font-size:32px}.choice{padding:26px;min-height:295px}}

/* A more welcoming rhythm, preserving the TOC5 palette. */
.choice{border-radius:18px}.contact{border-radius:18px}.hero-aside{border-radius:0 20px 20px 20px}.portal-intro h1{line-height:1.22}.welcome{margin:0 6vw 44px;padding:38px 42px;border:1px solid var(--line);border-radius:18px;background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.welcome .eyebrow{color:var(--accent)}.welcome h2{font-size:clamp(25px,2.5vw,35px);letter-spacing:-1px;line-height:1.3;margin-top:15px}.welcome p{color:var(--muted);max-width:500px}.welcome .btn{margin-top:22px}.choices{padding-bottom:35px}.hero h1{font-size:clamp(40px,4.7vw,67px);line-height:1.18}@media(max-width:800px){.welcome{grid-template-columns:1fr;gap:24px;padding:28px}.welcome h2 br{display:none}.hero h1{font-size:clamp(36px,6vw,52px)}}

/* Original horizontal logos for each business area. */
.service-page .brand .area-logo{width:330px;max-width:100%;height:auto}.service-page.insurance-page .brand .area-logo{width:265px}.service-page header .brand{max-width:48%}@media(max-width:800px){.service-page .brand .area-logo{width:250px}.service-page.insurance-page .brand .area-logo{width:205px}.service-page header{align-items:center}}@media(max-width:560px){.service-page header{flex-wrap:wrap;gap:18px}.service-page header .brand{max-width:100%}.service-page .brand .area-logo{width:260px}.service-page.insurance-page .brand .area-logo{width:220px}.service-page header nav{max-width:none;width:100%;justify-content:flex-start;gap:20px}}

.insurance-page .hero-aside .large-word{font-size:clamp(32px,3.2vw,46px);line-height:1.2;letter-spacing:-1px}@media(max-width:800px){.insurance-page .hero-aside .large-word{font-size:36px}}@media(max-width:480px){.insurance-page .hero-aside .large-word{font-size:30px}}

.partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.partner-logo{min-height:150px;background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;justify-content:center;padding:26px}.partner-logo img{width:100%;height:88px;object-fit:contain}.partner-logo img[src$="mgen.svg"]{height:105px}.partner-logo img[src$="generali.svg"]{height:110px}.partner-logo img[src$="lusitania.jpg"]{height:115px}#parceiros{background:#f4f7fc}@media(max-width:900px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.partner-grid{gap:12px}.partner-logo{padding:16px;min-height:125px}.partner-logo img{height:65px}.partner-logo img[src$="mgen.svg"],.partner-logo img[src$="generali.svg"],.partner-logo img[src$="lusitania.jpg"]{height:85px}}

.partner-logo img[src$="generali-centered.svg"],.partner-logo img[src$="real-vida-white.png"]{width:100%;height:88px;object-fit:contain;object-position:center}.service-specialists{margin-top:16px;color:var(--ink);font-size:19px;font-weight:500}@media(max-width:480px){.partner-logo img[src$="generali-centered.svg"],.partner-logo img[src$="real-vida-white.png"]{height:65px}}

.insurance-page header nav{gap:22px;flex-wrap:wrap;justify-content:flex-end}.about-insurance{padding:65px 6vw;display:grid;grid-template-columns:1fr 1.1fr;gap:65px;background:#fff}.about-insurance h2{font-size:clamp(28px,3vw,40px);line-height:1.25;letter-spacing:-1px;margin-top:15px}.about-insurance .eyebrow{color:var(--accent)}.about-insurance p{color:var(--muted);max-width:580px}.about-insurance p+p{margin-top:18px}.team-intro{background:#f4f7fc;border-top:1px solid var(--line)}.team-intro .btn{margin-top:23px}@media(max-width:1000px){.insurance-page header{flex-wrap:wrap;gap:20px}.insurance-page header nav{justify-content:flex-start;gap:20px}}@media(max-width:800px){.about-insurance{grid-template-columns:1fr;gap:25px;padding-top:45px;padding-bottom:45px}}

.service-page:not(.insurance-page) header nav{gap:22px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:1000px){.service-page:not(.insurance-page) header{flex-wrap:wrap;gap:20px}.service-page:not(.insurance-page) header nav{justify-content:flex-start;gap:20px}}

/* Shared page width: align all section edges on desktop and mobile. */
:root{--page-width:1248px;--page-gutter:24px}
body>header,body>footer{padding-left:max(var(--page-gutter),calc((100% - var(--page-width))/2));padding-right:max(var(--page-gutter),calc((100% - var(--page-width))/2))}
main>.portal-intro,main>.choices,main>.portal-note,main>.hero,main>.services,main>.approach,main>.other,main>.about-insurance,main>.welcome,main>.contact{width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-width);margin-left:auto;margin-right:auto;min-width:0}
main>.portal-intro,main>.choices,main>.portal-note,main>.hero,main>.approach,main>.other{padding-left:0;padding-right:0}
main>.services,main>.about-insurance{padding-left:36px;padding-right:36px;border-radius:18px}
main>.welcome{padding-left:36px;padding-right:36px;margin-bottom:44px}
main>.contact{padding-left:36px;padding-right:36px;margin-bottom:70px}
.hero{gap:clamp(32px,5vw,80px);grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr)}
.hero>*,.welcome>*,.section-head>*,.about-insurance>*,.contact>*{min-width:0}
.home-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:100px;padding:9px 15px;white-space:nowrap;background:white;color:var(--accent);font-weight:600}
.home-link:hover{border-color:var(--accent);background:#e9effb}
.service-page header{flex-wrap:wrap;gap:18px 28px}
.service-page header nav{max-width:none;flex:1 1 500px;gap:16px;justify-content:flex-end}
.pageviews{color:var(--muted);font-size:13px}.pageviews strong{color:var(--ink);font-variant-numeric:tabular-nums}
@media(max-width:1000px){.service-page header nav{justify-content:flex-start;flex-basis:100%}}
@media(max-width:800px){.hero{grid-template-columns:minmax(0,1fr)}main>.services,main>.about-insurance,main>.welcome,main>.contact{padding-left:24px;padding-right:24px}}
@media(max-width:480px){:root{--page-gutter:18px}main>.services,main>.about-insurance,main>.welcome,main>.contact{padding-left:20px;padding-right:20px}.service-page header nav{gap:12px 16px}.home-link{font-size:14px}.contact-details .email{font-size:clamp(18px,5.1vw,23px)}}

/* Identical outer and inner alignment across both business pages. */
.service-page{--section-inset:36px}
.service-page main>section,.service-page main>.other{
 width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-width);
 margin-left:auto;margin-right:auto;
 padding-left:var(--section-inset);padding-right:var(--section-inset);
 box-sizing:border-box;
}
.service-page>header,.service-page>footer{
 padding-left:calc(max(var(--page-gutter),(100% - var(--page-width))/2) + var(--section-inset));
 padding-right:calc(max(var(--page-gutter),(100% - var(--page-width))/2) + var(--section-inset));
}
@media(max-width:800px){.service-page{--section-inset:24px}}
@media(max-width:480px){.service-page{--section-inset:20px}}

.auto-quote{background:#e9effb;border:1px solid var(--line);border-radius:18px;padding-top:38px;padding-bottom:38px;margin-bottom:30px;display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center}.auto-quote h2{font-size:clamp(27px,2.7vw,38px);line-height:1.2;margin:12px 0}.auto-quote p{color:var(--muted)}.quote-entry{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.portuguese-plate{height:66px;display:flex;flex:1 1 250px;max-width:330px;min-width:220px;background:#fff;border:3px solid #18202c;border-radius:9px;overflow:hidden}.plate-country{width:42px;flex-shrink:0;background:#07379f;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;font:bold 20px Arial,sans-serif;line-height:1}.plate-country svg{width:30px;height:32px}.portuguese-plate input{min-width:0;width:100%;border:0;background:#fff;color:#121722;text-align:center;font:700 clamp(25px,2.5vw,34px)/1 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;padding:0 8px;border-radius:0}.portuguese-plate:focus-within{outline:3px solid #07379f;outline-offset:4px}.portuguese-plate input:focus{outline:none}.quote-hint{font-size:14px;margin-top:12px}.quote-error{color:#ad1629!important;font-size:14px;min-height:0;margin-top:10px}.quote-error:empty{display:none}button.btn{font-family:inherit;border:0;cursor:pointer;line-height:1.6}button.btn:disabled{opacity:.65;cursor:wait}#quote-dialog{width:calc(100% - 32px);max-width:560px;border:0;border-radius:20px;padding:42px;color:var(--ink);background:#fff;max-height:90dvh;overflow:auto;box-shadow:0 25px 90px #071f5540}#quote-dialog::backdrop{background:#071f5599}#quote-dialog h2{font-size:25px;line-height:1.35;letter-spacing:-.7px;margin:12px 0 18px}#quote-description{margin-bottom:22px;color:var(--muted)}.quote-close{position:absolute;right:12px;top:8px;background:none;border:0;color:var(--ink);font-size:30px;cursor:pointer;width:36px;height:36px}#quote-contact-form>label{display:block;font-size:15px;font-weight:600;margin:18px 0 7px}#quote-contact-form>input{width:100%;padding:12px 14px;border:1px solid #aebdd4;border-radius:8px;font:inherit;color:var(--ink);background:#fff}#quote-contact-form>input:focus{outline:2px solid var(--accent);outline-offset:2px}.quote-privacy{font-size:14px;color:var(--muted);margin:20px 0}#quote-submit{width:100%;margin-top:10px}.quote-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#quote-success p{color:var(--muted);margin-bottom:24px}body:has(#quote-dialog[open]){overflow:hidden}@media(max-width:900px){.auto-quote{grid-template-columns:1fr}}@media(max-width:480px){#quote-dialog{padding:36px 24px 26px}.quote-entry{gap:14px}.quote-entry .btn{width:100%}.portuguese-plate{max-width:100%;flex-basis:100%}}

/* Campaign carousel: same page margins as the rest of the site. */
.service-page main>.campaigns{padding:28px 0 0;margin-bottom:12px}.campaign-viewport{overflow:hidden;border-radius:18px}.campaign-slide{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);min-height:460px}.campaign-slide[hidden],.campaign-controls[hidden]{display:none!important}.campaign-health{background:#07379f;color:#fff}.campaign-auto{background:#ffcc00;color:#071f55}.campaign-ppr{background:#071f55;color:#fff}.campaign-copy{padding:40px 36px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.campaign-copy h2{font-size:clamp(27px,2.7vw,38px);line-height:1.2;letter-spacing:-1px;margin:15px 0 12px}.campaign-offer{display:flex;flex-wrap:wrap;gap:7px 12px;align-items:baseline;line-height:1.15;margin:8px 0 17px}.campaign-offer strong{font-size:clamp(48px,5.3vw,72px);letter-spacing:-3px;font-weight:800}.campaign-offer span{font-size:17px}.campaign-copy>p:not(.campaign-offer){max-width:460px}.campaign-copy .btn{margin-top:24px}.campaign-health .btn,.campaign-ppr .btn{background:#ffcc00;color:#071f55}.campaign-auto .btn{background:#071f55;color:#fff}.campaign-copy .campaign-note{font-size:12px;line-height:1.5;margin-top:21px;opacity:.88}.campaign-health .campaign-offer strong,.campaign-ppr .campaign-offer strong{color:#ffcc00}.campaign-image{min-width:0;overflow:hidden}.campaign-image img{width:100%;height:100%;object-fit:cover;display:block}.campaign-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;padding:17px 0}.campaign-controls>button{font:500 14px/1.4 Inter,Arial,sans-serif;color:var(--ink);border:1px solid var(--line);background:white;border-radius:100px;padding:8px 14px;cursor:pointer}.campaign-controls button:hover{border-color:var(--accent)}.campaign-dots{display:flex;gap:10px}.campaign-dots button{width:30px;height:30px;border:0;background:transparent;position:relative;cursor:pointer}.campaign-dots button:after{content:'';position:absolute;inset:9px;border-radius:50%;background:#afbdd5}.campaign-dots button[aria-pressed=true]:after{background:#07379f}.campaign-status{font-size:13px;font-variant-numeric:tabular-nums;color:var(--muted)}.campaign-image{touch-action:pan-y}@media(max-width:800px){.campaign-slide{grid-template-columns:1fr;min-height:0}.campaign-copy{padding:30px 26px}.campaign-image{height:240px}.campaign-copy h2{font-size:30px}.campaign-offer strong{font-size:58px}}@media(max-width:480px){.campaign-copy{padding:28px 22px}.campaign-copy h2{font-size:27px}.campaign-image{height:200px}.campaign-controls{gap:7px}.campaign-controls>button{padding:8px 10px}.campaign-offer strong{font-size:52px}}

/* Editorial campaign lettering: clear hierarchy and readable supporting copy. */
.campaign-copy{padding:40px 36px;gap:0}.campaign-slide{min-height:520px}.campaign-copy .eyebrow{font-size:13px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase}.campaign-copy h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(32px,3.2vw,44px);line-height:1.12;letter-spacing:-.5px;max-width:21ch;margin:16px 0 22px}.campaign-offer{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:4px;align-items:baseline;margin:0 0 20px}.campaign-offer strong{font-family:Inter,Arial,sans-serif;font-size:clamp(58px,6vw,80px);font-weight:800;letter-spacing:-3px;line-height:1}.campaign-offer>span:first-child{font-size:18px;font-weight:500}.campaign-offer>span:last-child{grid-column:1/-1;font-size:19px;font-weight:500}.campaign-copy>p:not(.campaign-offer){font-size:16px;line-height:1.65}.campaign-copy .campaign-note{font-size:13px!important;line-height:1.55!important;opacity:1;margin-top:22px;max-width:48ch}.campaign-copy .btn{font-size:15px;line-height:1.5;padding:13px 22px;letter-spacing:0;margin-top:20px}.ppr-return{display:flex;flex-direction:column;gap:8px;margin:0 0 22px}.ppr-metric-label{font-size:15px;line-height:1.4;color:#e1e9fa}.ppr-return>strong{font-family:Inter,Arial,sans-serif;font-size:clamp(52px,5.7vw,76px);line-height:1;font-weight:800;letter-spacing:-3px;color:#ffcc00}.ppr-period{font-size:14px;color:#e1e9fa;line-height:1.5}.ppr-tax{border-left:3px solid #ffcc00;padding:0 0 0 15px;display:flex;flex-direction:column;gap:2px}.ppr-tax strong{font-size:23px;line-height:1.3;letter-spacing:-.5px}.ppr-tax span{font-size:16px;line-height:1.5}.campaign-terms{font-size:14px;line-height:1.6;margin-top:12px;max-width:50ch}.campaign-terms summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:4px 0}.campaign-terms p{margin-top:12px}.campaign-terms summary:focus-visible{outline:2px solid #ffcc00;outline-offset:3px}.campaign-ppr .campaign-copy{justify-content:flex-start}.campaign-image img{object-position:center}@media(max-width:800px){.campaign-slide{min-height:0}.campaign-copy{padding:32px 28px}.campaign-copy h2{font-size:36px;max-width:22ch}.campaign-offer strong{font-size:68px}.ppr-return>strong{font-size:64px}}@media(max-width:480px){.campaign-copy{padding:28px 22px}.campaign-copy h2{font-size:32px;line-height:1.16}.campaign-offer strong{font-size:60px}.ppr-return>strong{font-size:56px;letter-spacing:-2px}.ppr-tax strong{font-size:22px}.campaign-copy .campaign-note{font-size:13px!important}}

/* Campaigns: product and offer first */
.campaign-copy h2{font-family:Inter,Arial,sans-serif;font-size:clamp(34px,3.6vw,52px);font-weight:800;line-height:1.08;letter-spacing:-1.5px;max-width:15ch;margin:0 0 28px;text-wrap:balance}
.campaign-copy .campaign-offer{gap:2px;margin:0 0 28px}.campaign-offer strong{font-size:clamp(82px,9vw,126px);line-height:.95;letter-spacing:-5px;font-weight:850}.campaign-offer>span:first-child{font-size:18px}.campaign-offer>span:last-child{font-size:25px;font-weight:650}
.campaign-copy .campaign-note{font-size:11px!important;font-weight:400;line-height:1.5;max-width:65ch;margin-top:18px;opacity:.78}
.campaign-controls{padding:14px 0;justify-content:center}.campaign-dots{gap:8px}.campaign-dots button{width:32px;height:32px;padding:0;border:0;background:transparent;display:grid;place-items:center}.campaign-dots button:before{content:"";width:9px;height:9px;border-radius:50%;background:#b3c1dc}.campaign-dots button[aria-pressed="true"]{background:transparent}.campaign-dots button[aria-pressed="true"]:before{background:#07379f;width:11px;height:11px}
@media(max-width:480px){.campaign-copy h2{font-size:34px;letter-spacing:-1px}.campaign-offer strong{font-size:90px}.campaign-offer>span:last-child{font-size:22px}}

/* Six campaigns, compact navigation */
.campaign-work,.campaign-home{background:#07379f;color:#fff}.campaign-life{background:#ffcc00;color:#071f55}.campaign-work .campaign-offer strong,.campaign-home .campaign-offer strong{color:#ffcc00}.campaign-life .campaign-offer strong{color:#07379f}.campaign-work .btn,.campaign-home .btn{background:#ffcc00;color:#071f55}.campaign-life .btn{background:#07379f;color:#fff}.campaign-dots{gap:0}.campaign-dots button{width:26px;height:30px}.campaign-dots button:before{width:5px;height:5px}.campaign-dots button[aria-pressed="true"]:before{width:6px;height:6px}.campaign-work .campaign-copy h2,.campaign-life .campaign-copy h2{font-size:clamp(30px,3.1vw,44px);max-width:18ch}

/* Single circular navigation marker; smaller campaign titles. */
.campaign-dots button:after{content:none;display:none}
.campaign-dots button:before,.campaign-dots button[aria-pressed="true"]:before{display:block;position:static;box-sizing:border-box;width:5px;height:5px;min-width:5px;min-height:5px;aspect-ratio:1;border-radius:50%;padding:0;border:0;transform:none}
.campaign-copy h2{font-size:clamp(30px,3.1vw,46px)}
.campaign-work .campaign-copy h2,.campaign-life .campaign-copy h2{font-size:clamp(28px,2.8vw,40px)}
@media(max-width:480px){.campaign-copy h2{font-size:30px}.campaign-work .campaign-copy h2,.campaign-life .campaign-copy h2{font-size:28px}}

/* A lighter reading rhythm, with photography. */
.choice-photo{display:block;width:100%;height:190px;object-fit:cover;border-radius:8px;margin-bottom:24px}.choice{min-height:0;padding:28px}.choice h2{margin:24px 0 12px}.choice .choice-mark{display:none}.choice p{font-size:16px}.choice .visit{margin-top:24px}.editorial-photo{margin:0;min-width:0;border-radius:14px;overflow:hidden;aspect-ratio:4/3}.editorial-photo img{display:block;width:100%;height:100%;object-fit:cover}.service-page .hero{grid-template-columns:1.1fr 1fr;gap:42px;align-items:center}.service-page .hero h1{font-size:clamp(38px,4.3vw,62px);margin:16px 0 20px}.service-page .hero p{font-size:18px;max-width:33ch}.about-insurance h2,.approach h2{font-size:clamp(29px,3vw,40px);line-height:1.16}.about-insurance p{max-width:45ch}.service h3{margin:12px 0 9px}.service p{font-size:15px;line-height:1.6}.steps p{font-size:15px}.welcome h2{max-width:18ch}.portal-intro{padding-bottom:36px}.portal-intro p{max-width:34ch}.welcome{margin-bottom:45px}
@media(max-width:800px){.service-page .hero{grid-template-columns:1fr;gap:28px}.editorial-photo{aspect-ratio:16/9;max-height:350px}.choice-photo{height:210px}.choice{padding:24px}}@media(max-width:480px){.choice-photo{height:175px}.service-page .hero h1{font-size:39px}.service-page .hero p{font-size:17px}.editorial-photo{aspect-ratio:4/3}.choice h2{margin-top:20px}}
