/* General identities only. styles.css retains the approved TI and marketing. */
@font-face{font-family:"Fraunces";src:url("fonts/fraunces.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("fonts/dm-sans.woff2") format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}
@font-face{font-family:"Unbounded";src:url("fonts/unbounded.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:"Onest";src:url("fonts/onest.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

body[data-general-style="calido"]{
 --general-bg:#f5cdab;--general-text:#482c46;--general-muted:#674959;--general-accent:#c44326;--general-line:#bd967e;
 --general-body:"DM Sans",Arial,sans-serif;--general-display:"Fraunces",Georgia,serif;--general-heading-weight:600;
 --general-font-axes:"opsz" 72,"SOFT" 50,"WONK" 1;
}
body[data-general-style="cobalto"]{
 --general-bg:#184fc5;--general-text:#f7fbff;--general-muted:#dce8ff;--general-accent:#e3ff6f;--general-line:#6b91e3;
 --general-body:"Onest",Arial,sans-serif;--general-display:"Unbounded",Arial,sans-serif;--general-heading-weight:500;--general-font-axes:normal;
}
/* Local tokens and fonts prevent the general identity from affecting TI/marketing. */
body:is([data-general-style="calido"],[data-general-style="cobalto"]) :is(.general-zone,.about-zone,.site-footer){
 --paper:var(--general-bg);--ink:var(--general-text);--muted:var(--general-muted);--lime:var(--general-accent);--line:var(--general-line);
 font-family:var(--general-body);color:var(--general-text);
}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) :is(.general-zone,.about-zone) :is(h1,h2,h3,h4,.specialty-title,.process-number){
 font-family:var(--general-display);font-weight:var(--general-heading-weight);font-variation-settings:var(--general-font-axes);letter-spacing:-.035em;
}
body:is([data-general-style="calido"],[data-general-style="cobalto"])[data-active-theme="general"]{
 --header-bg:var(--general-bg);--header-ink:var(--general-text);--header-line:var(--general-line);--header-accent:var(--general-accent);
}
body:is([data-general-style="calido"],[data-general-style="cobalto"])[data-active-theme="general"] .site-header{font-family:var(--general-body)}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .brand-general{font-family:var(--general-display);font-variation-settings:var(--general-font-axes)}

body:is([data-general-style="calido"],[data-general-style="cobalto"]) .highlight-word::after{display:none}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero-description{color:var(--general-muted);font-size:1.0625rem}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero .eyebrow{font-size:.875rem;letter-spacing:.06em}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .specialty-description{font-size:1rem;max-width:360px}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .footer-top>p{font-size:1rem}
body:is([data-general-style="calido"],[data-general-style="cobalto"]) .footer-bottom{font-family:var(--general-body);font-size:.8125rem;flex-wrap:wrap}

/* B / Editorial cálido — tactile color, a soft serif wordmark, generous curves. */
body[data-general-style="calido"] .brand-general{font-weight:700;letter-spacing:-.05em;font-variation-settings:"opsz" 144,"SOFT" 50,"WONK" 1}
body[data-general-style="calido"] .header-brand>.brand-general{font-size:3.15rem}
body[data-general-style="calido"][data-active-theme="general"] .main-nav .nav-contact{border-color:#482c46;border-radius:40px}
body[data-general-style="calido"] .hero{grid-template-columns:1.08fr 1fr;gap:55px;padding-block:80px 90px}
body[data-general-style="calido"] .hero h1{font-size:clamp(3.6rem,6vw,6.6rem);line-height:1.06;letter-spacing:-.055em;margin-block:29px}
body[data-general-style="calido"] .highlight-word{color:#b43825}
body[data-general-style="calido"] .hero-art{min-height:515px;background:#e4b48f;border-radius:130px 6px 6px 6px;box-shadow:14px 14px 0 #482c4620}
body[data-general-style="calido"] .hero-art>img{object-position:center}
body[data-general-style="calido"] .hero-art>figcaption{background:linear-gradient(transparent,#482c46dd);color:#fff0d7;padding:24px}
body[data-general-style="calido"] .button-dark{background:#482c46;color:#fff0d7;border-radius:50px;font-family:var(--general-body)}
body[data-general-style="calido"] .button-dark:hover{background:#633b5c}
body[data-general-style="calido"] .hero-footnote{color:#674959;letter-spacing:.055em}
body[data-general-style="calido"] .capabilities-band{background:#ac3a25;color:#fff0d7;border:0}
body[data-general-style="calido"] .capabilities-band>.wrap{font-size:1rem;padding-block:24px}
body[data-general-style="calido"] .capabilities-band [aria-hidden]{color:#fff0d7}
body[data-general-style="calido"] .specialties{display:block;padding-block:100px}
body[data-general-style="calido"] .section-heading{display:grid;grid-template-columns:1.2fr 1fr;column-gap:60px;align-items:end}
body[data-general-style="calido"] .section-heading>.eyebrow{grid-column:1/-1}
body[data-general-style="calido"] .section-heading h2{font-size:clamp(2.75rem,4vw,4.35rem);margin-block:20px 0;line-height:1.1}
body[data-general-style="calido"] .section-heading>p:last-child{max-width:440px}
body[data-general-style="calido"] .specialty-links{gap:26px;margin-top:42px}
body[data-general-style="calido"] .specialty-link{background:#fff0d7;color:#482c46;border:0;border-radius:3px 34px 3px 34px;padding:35px;min-height:330px}
body[data-general-style="calido"] .specialty-index{color:#883c35}
body[data-general-style="calido"] .specialty-title{font-size:2.85rem;margin-block:25px 21px;line-height:1.14}
body[data-general-style="calido"] .specialty-action{border-color:#cfb39f}
body[data-general-style="calido"] .about-zone{background:#fff0d7;padding-block:100px}
body[data-general-style="calido"] .about-intro>h2{font-size:clamp(3rem,4.8vw,4.75rem);line-height:1.1}
body[data-general-style="calido"] .process-heading>h3{font-size:2.65rem;line-height:1.1}
body[data-general-style="calido"] .process-list{border-color:#d2b69e}
body[data-general-style="calido"] .process-number{color:#a83624;font-size:3.5rem;font-weight:400}
body[data-general-style="calido"] .process-list h4{font-size:1.85rem}
body[data-general-style="calido"] .contact-section{background:#f5cdab;border:0;border-radius:4px 55px 4px 4px;padding:48px;column-gap:45px}
body[data-general-style="calido"] .contact-section h3{font-size:clamp(3.2rem,4.9vw,5rem);line-height:1.08}
body[data-general-style="calido"] .site-footer{background:#482c46;color:#fff0d7;padding-top:60px}
body[data-general-style="calido"] .footer-top{display:grid;grid-template-columns:1.3fr 1fr;column-gap:50px;row-gap:24px;align-items:center;border-color:#8b647e;padding-bottom:55px}
body[data-general-style="calido"] .footer-brand{grid-column:1;grid-row:1/3;font-size:clamp(5.5rem,13vw,12rem);line-height:1.04;letter-spacing:-.06em;width:fit-content}
body[data-general-style="calido"] .footer-top>p{grid-column:2;color:#ffe0c8;max-width:350px;font-size:1.125rem}
body[data-general-style="calido"] .back-top{grid-column:2;margin-left:0;justify-content:space-between;border-top:1px solid #8b647e;padding-top:20px;max-width:350px}
body[data-general-style="calido"] .footer-bottom{color:#ebc9d5;padding-block:28px}

/* C / Cobalto y cítrico — wide geometric typography and a digital product image. */
body[data-general-style="cobalto"] .brand-general{font-weight:600;letter-spacing:-.06em}
body[data-general-style="cobalto"] .header-brand>.brand-general{font-size:2rem}
body[data-general-style="cobalto"][data-active-theme="general"] .main-nav .nav-contact{background:#e3ff6f;color:#0c1c4a;border-color:#e3ff6f;border-radius:2px}
body[data-general-style="cobalto"] .hero{display:grid;grid-template-columns:1.2fr 1fr;grid-template-areas:"eyebrow eyebrow" "title title" "description art" "action art" "footnote art";gap:24px 60px;padding-block:68px 82px;align-items:start}
body[data-general-style="cobalto"] .hero-copy{display:contents}
body[data-general-style="cobalto"] .hero .eyebrow{grid-area:eyebrow;color:#e3ff6f}
body[data-general-style="cobalto"] .hero h1{grid-area:title;font-size:clamp(3rem,5.5vw,5.6rem);font-weight:500;line-height:1.13;letter-spacing:-.05em;margin:5px 0 29px;max-width:1220px}
body[data-general-style="cobalto"] .highlight-word{color:#e3ff6f}
body[data-general-style="cobalto"] .hero-description{grid-area:description;max-width:550px;line-height:1.8;margin-top:8px}
body[data-general-style="cobalto"] .hero .button{grid-area:action;margin:0;justify-self:start;align-self:start}
body[data-general-style="cobalto"] .hero-footnote{grid-area:footnote;align-self:end;margin:0;color:#dce8ff;line-height:1.8}
body[data-general-style="cobalto"] .hero-art{grid-area:art;width:100%;height:auto;min-height:0;aspect-ratio:4/3;background:#184fc5;border-radius:12px;border:1px solid #7099eb;align-self:stretch}
body[data-general-style="cobalto"] .hero-art>img{object-fit:cover}
body[data-general-style="cobalto"] .hero-art>figcaption{font-size:.75rem;background:linear-gradient(transparent,#0c1c4acc);color:#f7fbff;padding:22px}
body[data-general-style="cobalto"] .button-dark{font-family:var(--general-body);background:#e3ff6f;color:#0c1c4a;border:1px solid #0c1c4a;border-radius:3px;box-shadow:4px 4px 0 #0c1c4a}
body[data-general-style="cobalto"] .button-dark:hover{background:#efffa7}
body[data-general-style="cobalto"] .capabilities-band{background:#e3ff6f;color:#0c1c4a;border:0}
body[data-general-style="cobalto"] .capabilities-band>.wrap{font-family:var(--general-body);font-size:1rem;padding-block:25px;font-weight:600}
body[data-general-style="cobalto"] .capabilities-band [aria-hidden]{color:#0c1c4a}
body[data-general-style="cobalto"] .specialties{display:grid;grid-template-columns:1fr;gap:38px;padding-block:95px}
body[data-general-style="cobalto"] .section-heading{display:grid;grid-template-columns:1.5fr 1fr;column-gap:60px;align-items:end}
body[data-general-style="cobalto"] .section-heading>.eyebrow{grid-column:1/-1;color:#e3ff6f}
body[data-general-style="cobalto"] .section-heading h2{font-size:clamp(2.1rem,3.1vw,3.25rem);line-height:1.21;margin-block:20px 0;letter-spacing:-.045em}
body[data-general-style="cobalto"] .section-heading>p:last-child{max-width:440px}
body[data-general-style="cobalto"] .specialty-links{gap:26px}
body[data-general-style="cobalto"] .specialty-link{background:#0c1c4a;color:#f7fbff;border:1px solid #729bed;border-radius:0;padding:34px;min-height:340px}
body[data-general-style="cobalto"] .specialty-title{font-size:clamp(1.6rem,2.4vw,2.5rem);font-weight:500;line-height:1.2;letter-spacing:-.04em;margin-block:28px 23px}
body[data-general-style="cobalto"] .specialty-index{color:#e3ff6f;font-family:var(--general-body)}
body[data-general-style="cobalto"] .specialty-action{color:#e3ff6f;border-color:#4866a5;font-family:var(--general-body)}
body[data-general-style="cobalto"] .specialty-description{color:#dce8ff}
body[data-general-style="cobalto"] .about-zone{background:#0c1c4a;--general-line:#4866a5;--line:#4866a5;padding-block:100px}
body[data-general-style="cobalto"] .about-intro{grid-template-columns:1.2fr 1fr;column-gap:70px}
body[data-general-style="cobalto"] .about-intro>h2{font-size:clamp(2.1rem,3.2vw,3.3rem);line-height:1.25;letter-spacing:-.045em}
body[data-general-style="cobalto"] .process-heading>h3{font-size:clamp(1.6rem,2.3vw,2.5rem);line-height:1.28}
body[data-general-style="cobalto"] .process-list{gap:28px}
body[data-general-style="cobalto"] .process-number{color:#e3ff6f;font-size:2.85rem}
body[data-general-style="cobalto"] .process-list h4{font-size:1.05rem;line-height:1.45;letter-spacing:-.025em}
body[data-general-style="cobalto"] .contact-section{border:1px solid #5776b9;background:#184fc5;border-radius:0;padding:42px;column-gap:50px;grid-template-columns:1.15fr 1fr}
body[data-general-style="cobalto"] .contact-section h3{font-size:clamp(2.1rem,3.1vw,3.25rem);line-height:1.3;letter-spacing:-.035em}
body[data-general-style="cobalto"] .contact-address{color:#f7fbff}
body[data-general-style="cobalto"] .site-footer{background:#e3ff6f;color:#0c1c4a;padding-top:58px}
body[data-general-style="cobalto"] .footer-top{display:grid;grid-template-columns:1fr auto;column-gap:45px;row-gap:30px;align-items:end;border-color:#92a44b;padding-bottom:42px}
body[data-general-style="cobalto"] .footer-brand{grid-column:1/-1;font-size:clamp(4rem,14.5vw,12.5rem);line-height:1.1;letter-spacing:-.065em;max-width:100%}
body[data-general-style="cobalto"] .footer-top>p{grid-column:1;color:#0c1c4a;font-size:1.125rem}
body[data-general-style="cobalto"] .back-top{grid-column:2;margin-left:0;align-self:end}
body[data-general-style="cobalto"] .footer-bottom{color:#243b49;padding-block:26px}

@media(max-width:1150px){
 body[data-general-style="calido"] .hero{gap:40px;padding-block:65px}
 body[data-general-style="calido"] .hero-art{min-height:455px}
 body[data-general-style="calido"] .contact-section{padding:36px}
 body[data-general-style="calido"] .footer-top{column-gap:38px}
 body[data-general-style="cobalto"] .hero{gap:24px 40px}
 body[data-general-style="cobalto"] .section-heading{column-gap:38px}
 body[data-general-style="cobalto"] .contact-section{padding:34px;column-gap:35px}
 body[data-general-style="cobalto"] .process-list{grid-template-columns:1fr 1fr;gap:35px}
 body[data-general-style="cobalto"] .process-list h4{font-size:1.25rem}
}
@media(max-width:900px){
 body[data-general-style="calido"] .header-brand>.brand-general{font-size:2.65rem}
 body[data-general-style="calido"] .hero{grid-template-columns:1fr;gap:38px}
 body[data-general-style="calido"] .hero h1{font-size:clamp(3.6rem,8vw,5.5rem);max-width:750px}
 body[data-general-style="calido"] .hero-description{max-width:620px}
 body[data-general-style="calido"] .hero-art{min-height:0;height:440px;border-radius:85px 5px 5px 5px}
 body[data-general-style="calido"] .section-heading{column-gap:35px}
 body[data-general-style="calido"] .section-heading h2{font-size:3.1rem}
 body[data-general-style="calido"] .specialties{padding-block:75px}
 body[data-general-style="calido"] .specialty-link{padding:28px}
 body[data-general-style="calido"] .specialty-title{font-size:2.5rem}
 body[data-general-style="calido"] .footer-brand{font-size:clamp(5.25rem,13vw,8.8rem)}
 body[data-general-style="cobalto"] .header-brand>.brand-general{font-size:1.85rem}
 body[data-general-style="cobalto"] .hero{grid-template-columns:1fr 1fr;grid-template-areas:"eyebrow eyebrow" "title title" "description description" "action art" "footnote art";gap:24px 32px;padding-block:50px 65px}
 body[data-general-style="cobalto"] .hero h1{font-size:clamp(2.7rem,5.8vw,4.3rem);margin-bottom:15px}
 body[data-general-style="cobalto"] .hero-description{max-width:660px;margin:0}
 body[data-general-style="cobalto"] .hero-art{align-self:stretch;aspect-ratio:1/1}
 body[data-general-style="cobalto"] .hero .button{font-size:.875rem;gap:14px;padding-inline:18px;max-width:100%;white-space:normal}
 body[data-general-style="cobalto"] .section-heading{display:block}
 body[data-general-style="cobalto"] .section-heading h2{font-size:2.7rem;margin-bottom:24px}
 body[data-general-style="cobalto"] .section-heading>p:last-child{max-width:660px}
 body[data-general-style="cobalto"] .specialties{padding-block:75px}
 body[data-general-style="cobalto"] .specialty-link{padding:27px;min-height:330px}
 body[data-general-style="cobalto"] .specialty-title{font-size:1.8rem}
 body[data-general-style="cobalto"] .about-intro{display:block}
 body[data-general-style="cobalto"] .about-intro>h2{font-size:2.8rem;margin-block:20px 28px}
 body[data-general-style="cobalto"] .about-intro>p:not(.eyebrow){max-width:690px}
 body[data-general-style="cobalto"] .about-intro>p+p{margin-top:18px}
 body[data-general-style="cobalto"] .contact-section{grid-template-columns:1fr;gap:25px}
 body[data-general-style="cobalto"] .contact-section h3{font-size:2.8rem}
}
@media(max-width:620px){
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero .eyebrow{font-size:.75rem;letter-spacing:.045em}
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero-description{font-size:1rem}
 body[data-general-style="calido"] .hero{padding-block:42px 50px;gap:35px}
 body[data-general-style="calido"] .hero h1{font-size:clamp(3.3rem,11vw,4.5rem);margin-block:24px}
 body[data-general-style="calido"] .hero-art{height:auto;aspect-ratio:1/1;box-shadow:7px 7px 0 #482c4620;border-radius:55px 4px 4px 4px}
 body[data-general-style="calido"] .hero-art>figcaption{padding:20px}
 body[data-general-style="calido"] .capabilities-band>.wrap{font-size:.875rem;padding-block:19px}
 body[data-general-style="calido"] .specialties{padding-block:58px}
 body[data-general-style="calido"] .section-heading{display:block}
 body[data-general-style="calido"] .section-heading h2{font-size:2.8rem;margin-block:20px 24px}
 body[data-general-style="calido"] .specialty-links{margin-top:30px;gap:20px}
 body[data-general-style="calido"] .specialty-link{min-height:0;padding:29px}
 body[data-general-style="calido"] .specialty-title{font-size:2.55rem}
 body[data-general-style="calido"] .about-zone{padding-block:60px}
 body[data-general-style="calido"] .about-intro>h2{font-size:3rem}
 body[data-general-style="calido"] .process-heading>h3{font-size:2.4rem}
 body[data-general-style="calido"] .process-list h4{font-size:1.8rem}
 body[data-general-style="calido"] .contact-section{padding:28px 22px;border-radius:3px 38px 3px 3px}
 body[data-general-style="calido"] .contact-section h3{font-size:3rem}
 body[data-general-style="calido"] .site-footer{padding-top:34px}
 body[data-general-style="calido"] .footer-top{grid-template-columns:1fr;gap:24px;padding-bottom:35px}
 body[data-general-style="calido"] .footer-brand{grid-column:1;grid-row:auto;font-size:clamp(5.5rem,24vw,8.7rem)}
 body[data-general-style="calido"] .footer-top>p,body[data-general-style="calido"] .back-top{grid-column:1;max-width:none}
 body[data-general-style="cobalto"] .hero{grid-template-columns:1fr;grid-template-areas:"eyebrow" "title" "description" "action" "footnote" "art";padding-block:42px 50px;gap:25px}
 body[data-general-style="cobalto"] .hero h1{font-size:clamp(2.05rem,7.4vw,3.15rem);line-height:1.18;margin:0;letter-spacing:-.045em}
 body[data-general-style="cobalto"] .hero-art{aspect-ratio:4/3;margin-top:6px;border-radius:7px}
 body[data-general-style="cobalto"] .hero-art>figcaption{padding:18px}
 body[data-general-style="cobalto"] .hero .button{font-size:.875rem;padding-inline:20px;gap:20px}
 body[data-general-style="cobalto"] .capabilities-band>.wrap{font-size:.875rem;padding-block:19px}
 body[data-general-style="cobalto"] .specialties{padding-block:58px;gap:28px}
 body[data-general-style="cobalto"] .section-heading h2{font-size:clamp(1.8rem,6.3vw,2.45rem);line-height:1.28}
 body[data-general-style="cobalto"] .specialty-link{min-height:0;padding:27px}
 body[data-general-style="cobalto"] .specialty-title{font-size:1.8rem;line-height:1.3}
 body[data-general-style="cobalto"] .specialty-title>br{display:initial}
 body[data-general-style="cobalto"] .about-zone{padding-block:60px}
 body[data-general-style="cobalto"] .about-intro>h2{font-size:clamp(1.75rem,6.4vw,2.6rem);line-height:1.3}
 body[data-general-style="cobalto"] .process-heading>h3{font-size:1.65rem}
 body[data-general-style="cobalto"] .process-list{grid-template-columns:1fr;gap:28px}
 body[data-general-style="cobalto"] .process-list h4{font-size:1.3rem}
 body[data-general-style="cobalto"] .contact-section{padding:29px 22px;display:block}
 body[data-general-style="cobalto"] .contact-section h3{font-size:clamp(1.6rem,6.2vw,2.3rem)}
 body[data-general-style="cobalto"] .site-footer{padding-top:35px}
 body[data-general-style="cobalto"] .footer-top{grid-template-columns:1fr;gap:24px;padding-bottom:32px}
 body[data-general-style="cobalto"] .footer-brand{font-size:clamp(3.1rem,15vw,5.6rem);letter-spacing:-.055em;line-height:1.15}
 body[data-general-style="cobalto"] .footer-top>p,body[data-general-style="cobalto"] .back-top{grid-column:1;font-size:1rem}
 body[data-general-style="cobalto"] .back-top{justify-content:space-between}
}
@media print{
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) :is(.general-zone,.about-zone,.site-footer){background:#fff;--general-text:#000;--general-muted:#333;color:#000}
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero{display:block;width:100%;padding:20px 0}
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero-copy{display:block}
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .hero-art{min-height:0;max-width:360px;height:auto;aspect-ratio:4/3;box-shadow:none}
 body:is([data-general-style="calido"],[data-general-style="cobalto"]) .footer-brand{font-size:5rem}
}

/* A single selection palette for the whole site, including TI and marketing. */
body[data-general-style="calido"]{--selection-bg:#482c46;--selection-text:#f5cdab}
body[data-general-style="cobalto"]{--selection-bg:#f7fbff;--selection-text:#184fc5}
body[data-general-style]::selection,
body[data-general-style] *::selection{background:var(--selection-bg,var(--lime));color:var(--selection-text,var(--ink))}
