/* Muestra 4: imprenta ligera Josefin Sans + acentos Dancing Script. */
@font-face{font-family:'Josefin Sans';src:url('assets/fonts/JosefinSans-Variable.ttf') format('truetype');font-weight:100 700;font-style:normal;font-display:swap}
@font-face{font-family:'Dancing Script';src:url('assets/fonts/DancingScript-Variable.ttf') format('truetype');font-weight:400 700;font-style:normal;font-display:swap}
:root{--font-content:'Josefin Sans',sans-serif;--font-feature:'Dancing Script',cursive}
body{font-family:var(--font-content);font-size:18px;font-weight:400;line-height:1.7;font-synthesis:none}
[data-theme] h1,[data-theme] h2,[data-theme] h3,[data-theme] h4{font-family:var(--font-content);font-weight:400;letter-spacing:-.6px}
[data-theme] .hero h1{font-family:var(--font-content);font-size:clamp(62px,6.1vw,91px);font-weight:300;line-height:1.14;letter-spacing:-2.2px;white-space:normal;margin:30px 0 36px}
[data-theme] .hero h1 em{display:inline-block;font-family:var(--font-feature);font-weight:600;font-size:1.13em;line-height:1.08;letter-spacing:0}
[data-theme] h2{font-size:clamp(36px,3.8vw,55px);line-height:1.2}
[data-theme] h2 em,[data-theme] h2>span:not(.blue-period),[data-theme] .culture-copy h2 span{font-family:var(--font-feature);font-weight:600;letter-spacing:0;font-size:1.08em}
[data-theme] h3{font-size:31px;line-height:1.28;font-weight:400}
[data-theme] h4{font-size:22px;font-weight:500}
[data-theme] p,[data-theme] li,[data-theme] dd{font-family:var(--font-content);font-size:18px;line-height:1.7;font-weight:400;letter-spacing:0}
[data-theme] .hero-copy>p{font-size:24px;line-height:1.55;max-width:590px}
[data-theme] .eyebrow,[data-theme] .hero .eyebrow{font-family:var(--font-content);font-size:12px;font-weight:500;letter-spacing:1.8px}
[data-theme] header nav{font-size:16px;font-weight:400;gap:26px}
[data-theme] .nav-cta{font-size:16px}
[data-theme] .button,[data-theme] .hero .button{font-family:var(--font-content);font-size:17px;font-weight:500;line-height:1.35}
[data-theme] .text-link,[data-theme] .hero .text-link{font-size:17px}
[data-theme] .floating{font-size:18px}
[data-theme] .coordinate{font-size:11px;letter-spacing:1.2px}
[data-theme] .integral h2{font-size:42px;line-height:1.15}
[data-theme] .integral nav a{font-size:19px}
[data-theme] .section-heading p{max-width:400px}
[data-theme] .context-card h3{font-size:32px}
[data-theme] .context-top,[data-theme] .case-tag,[data-theme] .form-label{font-size:11px;letter-spacing:1.2px}
[data-theme] .context-tags{font-size:10px;letter-spacing:.7px}
[data-theme] .context-bridge a{font-size:16px}
[data-theme] .area-navigation a{font-family:var(--font-content);font-size:29px;font-weight:500;letter-spacing:-.4px}
[data-theme] .area-navigation a:before,[data-theme] .module-heading{font-family:var(--font-content);font-size:11px;letter-spacing:1.4px}
[data-theme] .area-overview h3{font-size:34px;font-weight:400}
[data-theme] .area-overview .area-description,[data-theme] .detail-body p,[data-theme] .detail-body li{font-size:18px;line-height:1.7}
[data-theme] .service-detail summary{font-family:var(--font-content);font-size:21px;line-height:1.45;font-weight:400}
[data-theme] .area-cta{font-size:17px}
[data-theme] .dialog-toolbar>span,[data-theme] .project-viewer-head>span{font-size:11px;letter-spacing:1px}
[data-theme] .case-stack span{font-size:13px}
[data-theme] .case-gallery>button>span{font-size:18px}
[data-theme] .project-gallery-dialog figcaption{font-family:var(--font-content);font-size:24px;font-weight:500}
[data-theme] #project-description{font-size:17px}
[data-theme] .case-window-bar{font-size:10px;letter-spacing:.8px}
[data-theme] .case-main-shot>span{font-size:12px;letter-spacing:1px}
[data-theme] .case-image-note,[data-theme] .case-context p,[data-theme] .expertise-note,[data-theme] .form-disclaimer,[data-theme] .recognition-source,[data-theme] .recognition-format,[data-theme] .contact-note p,[data-theme] footer p,[data-theme] .theme-footnote,[data-theme] .project-gallery-dialog>p{font-size:14px;line-height:1.65}
[data-theme] .culture-lead{font-size:22px;line-height:1.65}
[data-theme] .recognition-card blockquote,[data-theme] .recognition-body blockquote{font-family:var(--font-feature);font-size:30px;line-height:1.5;letter-spacing:0}
[data-theme] form label,[data-theme] form legend,[data-theme] form input:not([type=radio]),[data-theme] form textarea,[data-theme] .choices span{font-family:var(--font-content);font-size:17px;line-height:1.5;font-weight:400}
[data-theme] .contact-note strong{font-size:16px;font-weight:500}
[data-theme] #summary{font-family:var(--font-content);font-size:17px;line-height:1.65}
[data-theme] .copy{font-family:var(--font-content);font-size:16px}
[data-theme] footer>a:not(.footer-brand),[data-theme] footer small{font-size:14px}
[data-theme] .theme-dialog-top>span{font-size:12px;letter-spacing:1px}
[data-theme] .theme-option-label{font-family:var(--font-content);font-size:23px;font-weight:500}
[data-theme] .theme-option-description{font-size:16px}
@media(min-width:1201px){[data-theme] .hero .actions{gap:23px;flex-wrap:wrap}}
@media(max-width:1100px){[data-theme] header nav{font-size:14px;gap:18px}[data-theme] .nav-cta{font-size:14px}[data-theme] .hero h1{font-size:6vw}[data-theme] .hero-copy>p{font-size:21px}[data-theme] .hero .actions{flex-wrap:wrap}[data-theme] .hero .button,[data-theme] .hero .text-link{font-size:15px}}
@media(max-width:700px){[data-theme] .hero h1{font-size:clamp(44px,11.5vw,68px);letter-spacing:-1px;line-height:1.14;margin:24px 0 28px}[data-theme] .hero h1 em{font-size:1.18em}[data-theme] .hero-copy>p{font-size:21px}[data-theme] h2{font-size:38px}[data-theme] h3{font-size:30px}[data-theme] p,[data-theme] li,[data-theme] dd{font-size:17px}[data-theme] .hero .eyebrow,[data-theme] .eyebrow{font-size:10px;letter-spacing:1px}[data-theme] .button,[data-theme] .hero .button{font-size:16px}[data-theme] .hero .text-link{font-size:16px}[data-theme] .floating{font-size:16px}[data-theme] .integral nav a{font-size:15px;padding-inline:11px;gap:8px}[data-theme] .integral h2{font-size:35px}[data-theme] .area-overview h3{font-size:31px}[data-theme] .service-detail summary{font-size:19px}[data-theme] .area-overview .area-description,[data-theme] .detail-body p,[data-theme] .detail-body li{font-size:17px}[data-theme] .case-window-bar{font-size:8px}[data-theme] .project-viewer-head>span,[data-theme] .dialog-toolbar>span{font-size:10px}[data-theme] .case-image-note,[data-theme] .case-context p,[data-theme] .expertise-note,[data-theme] .form-disclaimer,[data-theme] .contact-note p,[data-theme] footer p,[data-theme] .theme-footnote{font-size:13px}[data-theme] .theme-dialog-body h2{font-size:34px}[data-theme] .theme-option-description{font-size:14px}[data-theme] .culture-lead{font-size:21px}}
@media(max-width:500px){[data-theme] header{gap:9px}[data-theme] header .logo{width:145px}[data-theme] .nav-cta{font-size:12px;padding:9px 11px;gap:7px}[data-theme] .nav-cta span{font-size:19px}[data-theme] .theme-trigger{width:34px;height:34px}[data-theme] .integral nav a{font-size:14px;padding-inline:9px}}
@media(max-width:360px){[data-theme] header .logo{width:123px}[data-theme] .nav-cta{font-size:11px;padding:8px 9px}[data-theme] .hero h1{font-size:42px}[data-theme] .integral nav a{font-size:12px}}
/* Navegación ligeramente mayor, conservando el ajuste en pantallas pequeñas. */
[data-theme] header nav,[data-theme] .nav-cta{font-size:18px}
@media(max-width:1200px){[data-theme] header nav{gap:20px}[data-theme] header nav,[data-theme] .nav-cta{font-size:16px}}
@media(max-width:700px){[data-theme] .nav-cta{font-size:13px}}
@media(max-width:360px){[data-theme] .nav-cta{font-size:12px}}
@media(max-width:1100px){[data-theme] header nav>a[href$="#enfoque"]{display:none}}
@media(max-width:900px){[data-theme] header nav>a[href$="#soluciones"],[data-theme] header nav>a[href$="#servicios"]{display:none}}
