:root { --navy:#073a5b; --blue:#0079c6; --aqua:#edf8f6; --mint:#00a86b; --ink:#123846; --paper:#f9fcfb; --line:#cde0dc; --muted:#55727a; --serif:"Source Serif 4", Georgia, serif; --sans:"Manrope", Arial, sans-serif; }

/* Página de inicio: enfoque DIMEDA. La paleta se hereda de las variables institucionales. */
.dimeda-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(430px,.94fr); min-height:648px; background:var(--navy); color:#fff; }
.dimeda-hero-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(66px,8vw,118px) clamp(24px,7vw,110px); }
.dimeda-hero .eyebrow,.dimeda-representation .eyebrow { color:var(--mint); }
.dimeda-hero h1,.dimeda-intro-copy h2,.dimeda-section-heading h2,.dimeda-representation h2,.dimeda-other-brands h2 { margin:0; font-family:var(--serif); font-size:clamp(45px,5.05vw,76px); font-weight:700; letter-spacing:-.048em; line-height:1.02; }
.dimeda-hero h1 em,.dimeda-intro-copy h2 em,.dimeda-section-heading h2 em,.dimeda-representation h2 em,.dimeda-other-brands h2 em { color:var(--mint); font-weight:inherit; }
.dimeda-hero .lead { max-width:535px; margin:25px 0 30px; color:#d2e2e5; font-size:16px; line-height:1.8; }
.dimeda-logo-plate { width:min(100%,322px); margin-top:49px; padding:16px 18px 15px; background:#fff; color:var(--navy); box-shadow:0 16px 30px #021b2990; }
.dimeda-logo-plate>span,.dimeda-logo-plate small { display:block; font-size:8px; font-weight:800; letter-spacing:.13em; line-height:1.45; text-transform:uppercase; }
.dimeda-logo-plate img { width:175px; height:43px; margin:10px 0 8px; object-fit:contain; object-position:left center; }
.dimeda-logo-plate small { color:var(--muted); letter-spacing:.05em; text-transform:none; }
.dimeda-hero-visual { position:relative; min-height:100%; overflow:hidden; background:#dcebea; }
.dimeda-clinical-image { width:100%; height:100%; min-height:648px; object-fit:cover; object-position:center; }
.dimeda-hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,58,91,.05),rgba(7,58,91,.42)); pointer-events:none; }
.dimeda-hero-caption { position:absolute; z-index:1; top:31px; right:31px; display:flex; flex-direction:column; align-items:flex-end; color:#fff; text-shadow:0 2px 12px #042b42; }
.dimeda-hero-caption span { font-family:var(--serif); font-size:34px; font-weight:700; letter-spacing:-.05em; }.dimeda-hero-caption strong { font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.dimeda-product-float { position:absolute; z-index:2; right:clamp(20px,4vw,52px); bottom:33px; width:175px; padding:13px; background:#fff; color:var(--navy); box-shadow:0 17px 30px #031d2b8a; }
.dimeda-product-float img { width:100%; height:103px; object-fit:contain; }.dimeda-product-float span { display:block; margin-top:7px; padding-top:7px; border-top:1px solid var(--line); font-size:9px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.dimeda-ribbon { display:grid; grid-template-columns:repeat(3,1fr); padding:0 clamp(20px,7vw,110px); background:var(--aqua); }
.dimeda-ribbon p { display:flex; flex-direction:column; gap:3px; min-height:105px; justify-content:center; margin:0; padding:18px clamp(14px,3vw,42px); border-right:1px solid var(--line); }.dimeda-ribbon p:first-child { border-left:1px solid var(--line); }
.dimeda-ribbon strong { color:var(--navy); font-size:13px; }.dimeda-ribbon span { color:var(--muted); font-size:11px; }
.dimeda-introduction { display:grid; grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr); min-height:600px; background:#fff; }
.dimeda-intro-visual { display:flex; align-items:center; justify-content:center; padding:clamp(38px,7vw,98px); background:var(--aqua); }.dimeda-intro-visual img { max-height:370px; object-fit:contain; }
.dimeda-intro-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(67px,8vw,110px); }.dimeda-intro-copy h2 { max-width:650px; font-size:clamp(42px,4.7vw,67px); }
.dimeda-intro-copy>p:not(.eyebrow),.dimeda-section-heading>p:not(.eyebrow),.dimeda-representation-copy>p:not(.eyebrow),.dimeda-other-brands>div>p:not(.eyebrow) { max-width:570px; margin:25px 0 25px; color:var(--muted); font-size:14px; line-height:1.85; }
.dimeda-solutions { background:var(--paper); }.dimeda-section-heading { max-width:720px; }.dimeda-section-heading h2 { font-size:clamp(42px,4.8vw,68px); }
.dimeda-solution-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; margin:54px 0 30px; }
.dimeda-solution-card { display:flex; flex-direction:column; min-height:278px; padding:28px; border:1px solid var(--line); background:#fff; transition:transform .2s,box-shadow .2s,background .2s; }
.dimeda-solution-card:hover { background:var(--aqua); box-shadow:0 14px 28px #073a5b1c; transform:translateY(-4px); }.dimeda-solution-card>span { color:var(--mint); font-size:10px; font-weight:800; letter-spacing:.12em; }
.dimeda-solution-card h3 { margin:36px 0 8px; color:var(--navy); font-family:var(--serif); font-size:28px; line-height:1.05; letter-spacing:-.035em; }.dimeda-solution-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.dimeda-solution-card b { margin-top:auto; padding-top:22px; color:var(--blue); font-size:10px; letter-spacing:.06em; }.dimeda-solution-featured { background:var(--navy); border-color:var(--navy); }.dimeda-solution-featured h3 { color:#fff; }.dimeda-solution-featured p { color:#c7dce0; }.dimeda-solution-featured b { color:var(--mint); }
.dimeda-representation { display:grid; grid-template-columns:minmax(0,1.14fr) minmax(330px,.86fr); gap:clamp(45px,8vw,115px); padding:clamp(75px,9vw,128px) clamp(20px,8vw,120px); background:var(--navy); color:#fff; }
.dimeda-representation-copy h2 { max-width:760px; }.dimeda-representation-copy>p:not(.eyebrow) { color:#c6d9de; }
.dimeda-steps { max-width:635px; margin-top:42px; border-top:1px solid #375b69; }.dimeda-steps article { display:grid; grid-template-columns:42px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid #375b69; }.dimeda-steps article>span { color:var(--mint); font-size:10px; font-weight:800; }.dimeda-steps h3 { margin:0 0 3px; font-size:13px; }.dimeda-steps p { margin:0; color:#bdcfd4; font-size:12px; line-height:1.65; }
.dimeda-diagnostic-card { align-self:center; padding:20px; background:#fff; color:var(--navy); box-shadow:0 18px 35px #031b28a0; }.dimeda-diagnostic-card>span { display:block; margin-bottom:13px; color:var(--blue); font-family:var(--serif); font-size:27px; font-weight:700; letter-spacing:-.05em; }.dimeda-diagnostic-card img { width:100%; height:270px; object-fit:contain; background:var(--aqua); }.dimeda-diagnostic-card p { margin:17px 4px 3px; color:var(--muted); font-size:12px; line-height:1.65; }
.dimeda-other-brands { display:grid; grid-template-columns:1fr 1fr; gap:10vw; align-items:end; background:var(--aqua); }.dimeda-other-brands h2 { font-size:clamp(40px,4.6vw,65px); }.dimeda-other-brands>div:last-child { padding-bottom:7px; }
@media (max-width:900px) { .dimeda-hero { grid-template-columns:1fr; }.dimeda-hero-visual,.dimeda-clinical-image { min-height:470px; }.dimeda-ribbon { padding:0 20px; }.dimeda-solution-grid { grid-template-columns:repeat(2,1fr); }.dimeda-representation { grid-template-columns:1fr; }.dimeda-diagnostic-card { width:min(100%,470px); }.dimeda-other-brands { gap:7vw; } }
@media (max-width:680px) { .dimeda-hero-copy { padding-top:63px; padding-bottom:65px; }.dimeda-hero h1 { font-size:48px; }.dimeda-hero-visual,.dimeda-clinical-image { min-height:390px; }.dimeda-hero-caption { top:20px; right:20px; }.dimeda-hero-caption span { font-size:29px; }.dimeda-product-float { right:20px; bottom:20px; width:150px; }.dimeda-ribbon { grid-template-columns:1fr; }.dimeda-ribbon p,.dimeda-ribbon p:first-child { min-height:75px; padding:15px 10px; border-left:0; border-right:0; border-bottom:1px solid var(--line); }.dimeda-introduction,.dimeda-other-brands { grid-template-columns:1fr; }.dimeda-intro-visual { min-height:330px; }.dimeda-intro-copy { padding:65px 20px; }.dimeda-solution-grid { grid-template-columns:1fr; }.dimeda-solution-card { min-height:225px; }.dimeda-solution-card h3 { margin-top:25px; }.dimeda-representation { gap:44px; }.dimeda-representation h2 { font-size:42px; }.dimeda-diagnostic-card img { height:230px; } }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); font-size:16px; line-height:1.55; } a { color:inherit; text-decoration:none; } img { display:block; max-width:100%; }
.notice { min-height:34px; padding:8px clamp(20px,5vw,72px); background:var(--navy); color:#e9f7f6; display:flex; justify-content:flex-end; gap:9px; font-size:10px; letter-spacing:.08em; font-weight:700; }
.header { height:88px; padding:0 clamp(20px,5vw,72px); background:#fff; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #e1e9e8; position:relative; z-index:4; }.brand img { width:174px; max-height:58px; object-fit:contain; object-position:left center; }.nav { display:flex; align-items:center; gap:22px; font-size:12px; font-weight:800; letter-spacing:.04em; }.nav a:not(.nav-cta):not(.nav-login) { color:#34505b; }.nav a:not(.nav-cta):not(.nav-login):hover { color:var(--blue); }.nav-login { padding:10px 14px; border:1px solid var(--mint); color:#08724e; transition:background .2s,color .2s; }.nav-login:hover { background:var(--mint); color:#fff; }.nav-cta { background:var(--blue); color:#fff; padding:13px 17px; transition:background .2s,transform .2s; }.nav-cta:hover { background:var(--navy); transform:translateY(-2px); }.nav-cta span { margin-left:9px; }.menu-button { display:none; padding:8px; border:0; background:transparent; }.menu-button span { display:block; width:24px; height:2px; margin:5px 0; background:var(--navy); }
.hero { min-height:610px; display:grid; grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr); background:var(--navy); color:white; }.hero-copy { padding:clamp(70px,9vw,130px) clamp(24px,7vw,108px) 58px; align-self:center; }.eyebrow { margin:0 0 22px; color:var(--blue); font-size:10px; font-weight:800; letter-spacing:.16em; }.hero .eyebrow { color:var(--mint); }.hero h1,.section h2,.reassurance h2,.cta h2 { margin:0; font-family:var(--serif); font-size:clamp(47px,5vw,76px); font-weight:700; letter-spacing:-.045em; line-height:1.01; }.hero h1 em,.section h2 em,.reassurance h2 em,.cta h2 em { color:var(--mint); font-weight:inherit; }.lead { max-width:540px; margin:28px 0 32px; color:#d2e2e5; font-size:16px; line-height:1.75; }.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }.button { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:50px; padding:12px 19px; font-size:12px; font-weight:800; letter-spacing:.02em; transition:transform .2s,background .2s; }.button:hover { transform:translateY(-3px); }.button span { font-size:20px; line-height:1; }.button-primary { background:var(--mint); color:var(--navy); }.button-quiet { border:1px solid #63818c; color:#fff; }.button-quiet:hover { background:#123e55; }.hero-proof { display:flex; align-items:center; gap:14px; margin-top:64px; padding-top:19px; border-top:1px solid #315367; max-width:425px; }.hero-proof strong { color:var(--mint); font-family:var(--serif); font-size:31px; line-height:1; }.hero-proof span { max-width:210px; color:#b8ccd1; font-size:10px; font-weight:700; line-height:1.45; text-transform:uppercase; letter-spacing:.08em; }.hero-image-wrap { position:relative; min-height:510px; overflow:hidden; }.hero-image-wrap:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(9,47,68,.18),transparent 45%),linear-gradient(0deg,rgba(9,47,68,.22),transparent 46%); }.hero-image { width:100%; height:100%; min-height:610px; object-fit:cover; }.image-badge { position:absolute; z-index:1; right:32px; bottom:34px; width:164px; padding:18px; background:#fff; color:var(--navy); box-shadow:0 14px 25px #041c28a0; }.image-badge span,.image-badge small { display:block; font-size:9px; line-height:1.4; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.image-badge strong { display:block; margin:8px 0 1px; font-family:var(--serif); font-size:27px; letter-spacing:-.04em; }.image-badge small { color:var(--blue); }
.section { padding:clamp(72px,9vw,130px) clamp(20px,8vw,120px); }.intro { background:var(--aqua); }.intro-top { display:flex; align-items:center; gap:20px; }.intro .eyebrow { margin:0; }.rule { width:65px; height:1px; background:#88aaa7; }.intro-grid { display:grid; grid-template-columns:1.15fr .65fr; gap:10vw; align-items:end; margin-top:31px; }.intro h2 { font-size:clamp(38px,4.5vw,67px); }.intro-copy { padding-bottom:8px; }.intro-copy p { margin:0 0 27px; color:#3d5862; font-size:15px; line-height:1.8; }.arrow-link { display:inline-flex; gap:15px; align-items:center; padding-bottom:5px; border-bottom:1px solid var(--ink); font-size:11px; font-weight:800; letter-spacing:.03em; }.arrow-link span { color:var(--blue); font-size:20px; line-height:.7; }
.catalog { background:#fff; }.section-heading { max-width:680px; }.section-heading h2 { font-size:clamp(42px,5vw,70px); }.product-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin:56px 0 27px; }.product-card { min-height:200px; position:relative; padding:25px; background:#edf4f2; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; transition:transform .25s,background .25s; }.product-card:hover { transform:translateY(-5px); background:#e0f0ed; }.product-card-large { grid-row:span 2; min-height:413px; color:#fff; }.product-card-large:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,35,49,.9),rgba(3,35,49,.02) 68%); }.product-card-large img { position:absolute; inset:0; height:100%; width:100%; object-fit:cover; }.product-card > div,.product-card > span { position:relative; z-index:1; }.product-card h3 { margin:0 0 5px; font-family:var(--serif); font-size:27px; letter-spacing:-.03em; }.product-card p { margin:0; max-width:225px; color:#57707a; font-size:12px; }.product-card-large p { color:#d7e8e6; }.card-number { position:absolute!important; top:23px; left:25px; color:var(--blue); font-size:10px; font-weight:800; }.product-card-large .card-number { color:var(--mint); }.card-arrow { position:absolute!important; right:25px; bottom:25px; color:var(--blue); font-size:23px; }.product-card-large .card-arrow { color:#fff; }.outline-button { display:inline-flex; align-items:center; gap:22px; padding:13px 0; border-bottom:1px solid var(--navy); font-size:11px; font-weight:800; }.outline-button span { color:var(--blue); font-size:19px; }
.reassurance { display:grid; grid-template-columns:1fr 1fr; background:var(--navy); color:white; }.reassurance-image { min-height:650px; overflow:hidden; }.reassurance-image img { width:100%; height:100%; object-fit:cover; }.reassurance-copy { padding:clamp(70px,8vw,115px) clamp(25px,7vw,100px); }.reassurance-copy .eyebrow { color:var(--mint); }.reassurance h2 { font-size:clamp(42px,4.6vw,66px); }.benefits { margin-top:45px; border-top:1px solid #375b69; }.benefits article { display:grid; grid-template-columns:40px 1fr; gap:13px; padding:19px 0; border-bottom:1px solid #375b69; }.benefits article>span { color:var(--mint); font-size:10px; font-weight:800; }.benefits h3 { margin:0 0 5px; font-size:13px; font-weight:800; }.benefits p { margin:0; color:#bfced2; font-size:12px; line-height:1.65; }
.brands { background:#f0f6f5; }.brands-grid { display:grid; grid-template-columns:1fr 1fr; gap:10vw; align-items:center; }.brands h2 { font-size:clamp(42px,4.6vw,68px); }.brands-grid>div { border-left:1px solid var(--line); padding:16px 0 16px 45px; }.brands-grid strong { color:var(--blue); font-family:var(--serif); font-size:43px; letter-spacing:-.06em; }.brands-grid p { max-width:330px; color:var(--muted); font-size:14px; line-height:1.75; }
.cta { padding:clamp(78px,10vw,145px) 20px; background:var(--blue); color:#fff; text-align:center; }.cta .eyebrow { color:#b8e5dd; }.cta h2 { font-size:clamp(48px,5.6vw,80px); }.cta h2 em { color:#d4f2ed; }.cta>p:not(.eyebrow) { max-width:490px; margin:22px auto 31px; color:#d3e8e9; font-size:14px; }.button-light { background:#fff; color:var(--navy); }
footer { display:grid; grid-template-columns:1.5fr .65fr .85fr; gap:45px; padding:54px clamp(20px,8vw,120px) 25px; background:#073a5b; color:#dae7e9; font-size:11px; } footer img { width:183px; max-height:60px; object-fit:contain; object-position:left; }.footer-brand p { max-width:230px; margin:13px 0 0; color:#94b2b9; line-height:1.6; } footer>div:not(.footer-brand) { display:flex; flex-direction:column; gap:7px; } .footer-label { margin:0 0 3px; color:var(--mint); font-size:9px; font-weight:800; letter-spacing:.13em; } footer>div>p:not(.footer-label) { margin:0; color:#aac2c7; } footer a:hover { color:var(--mint); }.copyright { grid-column:1/-1; margin:27px 0 0; padding-top:18px; border-top:1px solid #254959; color:#87a7ae; font-size:9px; }
@media (max-width:780px) { .notice { justify-content:center; font-size:8px; text-align:center; }.header { height:72px; }.brand img { width:145px; }.menu-button { display:block; }.nav { display:none; position:absolute; top:72px; right:14px; left:14px; padding:18px; flex-direction:column; align-items:stretch; background:#fff; box-shadow:0 15px 30px #082b3d2b; }.nav.open { display:flex; }.nav a { padding:8px; }.nav-cta { text-align:center; }.hero { grid-template-columns:1fr; }.hero-copy { padding-top:70px; }.hero-image-wrap { min-height:350px; }.hero-image { min-height:350px; }.image-badge { right:20px; bottom:20px; }.intro-grid,.brands-grid { grid-template-columns:1fr; gap:30px; }.product-grid { grid-template-columns:1fr; }.product-card-large { grid-row:auto; min-height:360px; }.reassurance { grid-template-columns:1fr; }.reassurance-image { min-height:320px; }.brands-grid>div { padding:25px 0 0; border-left:0; border-top:1px solid var(--line); } footer { grid-template-columns:1fr 1fr; gap:35px 20px; }.footer-brand { grid-column:1/-1; }.hero-proof { margin-top:48px; } }
@media (max-width:430px) { .hero h1 { font-size:46px; }.section h2,.reassurance h2 { font-size:40px; }.hero-actions .button { width:100%; }.notice span:nth-child(2) { display:none; } footer { grid-template-columns:1fr; }.footer-brand { grid-column:auto; } }

.inner-hero { min-height:390px; position:relative; display:grid; align-items:center; overflow:hidden; background:var(--navy); color:#fff; }.inner-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:right center; opacity:.42; }.inner-hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#073a5b 9%,rgba(7,58,91,.86) 45%,rgba(7,58,91,.15) 100%); }.inner-hero-copy { position:relative; z-index:1; width:min(760px,100%); padding:70px clamp(20px,8vw,120px); }.inner-hero .eyebrow { color:#93e2c6; }.inner-hero h1 { margin:0; font-family:var(--serif); font-size:clamp(46px,5.7vw,78px); line-height:1.02; letter-spacing:-.045em; }.inner-hero h1 em { color:var(--mint); }.inner-hero p:not(.eyebrow) { max-width:560px; margin:18px 0 0; color:#d4e7ea; font-size:15px; line-height:1.75; }
.page-section { padding:clamp(68px,8vw,112px) clamp(20px,8vw,120px); }.page-intro { max-width:800px; }.page-intro h2,.contact-copy h2,.quote-copy h2 { margin:0; font-family:var(--serif); font-size:clamp(37px,4.2vw,59px); line-height:1.08; letter-spacing:-.04em; }.page-intro>p:not(.eyebrow) { max-width:690px; margin:22px 0 0; color:var(--muted); line-height:1.85; }
.category-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:48px; }.category { min-height:238px; padding:28px; background:#fff; border:1px solid #dce9e6; display:flex; flex-direction:column; justify-content:space-between; transition:transform .2s,box-shadow .2s; }.category:hover { transform:translateY(-4px); box-shadow:0 12px 25px #0a4b6420; }.category-number { color:var(--mint); font-size:10px; font-weight:800; letter-spacing:.12em; }.category h3 { margin:20px 0 8px; font-family:var(--serif); font-size:28px; line-height:1.1; letter-spacing:-.03em; }.category p { margin:0; color:var(--muted); font-size:12px; line-height:1.75; }.category a { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; margin-top:17px; background:var(--aqua); color:var(--blue); font-size:19px; }
.brand-list { display:grid; grid-template-columns:repeat(4,1fr); margin-top:48px; border-top:1px solid var(--line); border-left:1px solid var(--line); }.brand-item { min-height:143px; padding:25px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:flex-end; background:#fff; }.brand-item strong { color:var(--blue); font-family:var(--serif); font-size:29px; letter-spacing:-.04em; }.brand-item span { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.1em; }.brand-note { display:flex; justify-content:space-between; gap:35px; align-items:center; margin-top:55px; padding:35px; background:var(--aqua); }.brand-note p { max-width:590px; margin:0; color:#395c65; }
.contact-layout,.quote-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:70px; align-items:start; }.contact-copy>p:not(.eyebrow),.quote-copy>p:not(.eyebrow) { color:var(--muted); line-height:1.8; }.contact-channels { margin-top:31px; border-top:1px solid var(--line); }.contact-channel { display:grid; grid-template-columns:35px 1fr; gap:14px; padding:19px 0; border-bottom:1px solid var(--line); }.contact-channel span { color:var(--mint); font-size:16px; font-weight:800; }.contact-channel h3 { margin:0 0 3px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }.contact-channel p,.contact-channel a { margin:0; color:var(--muted); font-size:13px; line-height:1.65; }.contact-channel a:hover { color:var(--blue); }.map-link { display:flex; align-items:center; justify-content:space-between; min-height:175px; margin-top:26px; padding:32px; background:linear-gradient(135deg,#e7f7f2,#d8eef7); color:var(--navy); }.map-link strong { font-family:var(--serif); font-size:26px; }.map-link span { font-size:26px; color:var(--blue); }
.form-card { padding:clamp(26px,5vw,58px); background:var(--navy); color:#fff; }.form-card h2 { margin:0 0 7px; font-family:var(--serif); font-size:37px; letter-spacing:-.04em; }.form-card>p { margin:0 0 28px; color:#c4d9de; font-size:13px; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.form-field { display:flex; flex-direction:column; gap:6px; }.form-field.full { grid-column:1/-1; }.form-field label { color:#c5dcdf; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.form-field input,.form-field select,.form-field textarea { width:100%; border:1px solid #5c8490; padding:12px; border-radius:0; outline:0; background:#fff; color:var(--ink); font:inherit; font-size:13px; }.form-field textarea { min-height:115px; resize:vertical; }.form-card .button { margin-top:24px; border:0; cursor:pointer; }.form-help { margin:17px 0 0!important; color:#b9d2d8!important; font-size:11px!important; }.form-help a { color:#95e6c7; text-decoration:underline; }.form-status { display:none; margin-top:15px; padding:12px; background:#dff6ec; color:#075b3d; font-size:12px; }.form-status.visible { display:block; }
@media (max-width:780px) { .inner-hero { min-height:350px; }.inner-hero-copy { padding-top:62px; padding-bottom:62px; }.category-grid { grid-template-columns:1fr; }.brand-list { grid-template-columns:repeat(2,1fr); }.brand-note,.contact-layout,.quote-layout { grid-template-columns:1fr; display:grid; }.brand-note { align-items:start; }.contact-layout,.quote-layout { gap:42px; }.form-grid { grid-template-columns:1fr; }.form-field.full { grid-column:auto; } }

.brand-list { grid-template-columns:repeat(4,minmax(0,1fr)); gap:48px; padding:0; border:0; }.brand-item { min-height:224px; padding:0; border:0; background:transparent; display:block; perspective:1000px; }.brand-item:hover { background:transparent; transform:none; }.brand-card-inner { position:relative; display:block; width:100%; min-height:224px; transform-style:preserve-3d; transition:transform .68s cubic-bezier(.2,.72,.24,1); }.brand-item:hover .brand-card-inner,.brand-item:focus-visible .brand-card-inner { transform:rotateY(180deg); }.brand-card-face { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; border:1px solid #d7e0dc; border-radius:13px; backface-visibility:hidden; -webkit-backface-visibility:hidden; overflow:hidden; }.brand-card-front { background:#fff; }.brand-card-front .brand-logo { width:74%; height:92px; margin:0; object-fit:contain; object-position:center; transform:scale(2.25); }.brand-card-back { align-items:flex-start; padding:27px; background:var(--mint); color:#fff; transform:rotateY(180deg); }.brand-card-back strong { margin:0 0 4px; font-family:var(--serif); font-size:25px; letter-spacing:-.04em; }.brand-card-back span { font-size:11px; font-weight:700; letter-spacing:.03em; }.brand-card-back b { position:absolute; right:25px; bottom:22px; font-size:23px; font-weight:400; }.brand-note { margin-top:58px; } @media (prefers-reduced-motion:reduce) { .brand-card-inner { transition:none; } } @media (max-width:780px) { .brand-list { gap:20px; }.brand-item,.brand-card-inner { min-height:180px; }.brand-card-front .brand-logo { height:64px; transform:scale(1.8); } }
