:root{--ftl-bg:#faf9f5;--ftl-surface:#fff;--ftl-text:#102338;--ftl-muted:#526773;--ftl-line:#d6dde0;--ftl-accent:#9a7437;color-scheme:light;scroll-behavior:auto}
:root[data-theme=dark]{--ftl-bg:#102338;--ftl-surface:#152d43;--ftl-text:#f3f1ec;--ftl-muted:#c1cfd6;--ftl-line:#314b60;--ftl-accent:#e2bf78;color-scheme:dark}
body{background:var(--ftl-bg);color:var(--ftl-text)}
.site-header{background:var(--ftl-surface);color:var(--ftl-text);border-color:var(--ftl-line);position:relative;z-index:20}
.header-inner{gap:24px}.site-header nav{gap:24px;margin-left:auto}.logo img{border-radius:5px;background:#fff;padding:3px}
.light-section,.dark-section,.page-heading{background:var(--ftl-bg);color:var(--ftl-text)}
.light-section p,.page-heading p,.contact-grid address{color:var(--ftl-muted)}
.page-heading h1 em,.light-section .eyebrow,.dark-section .eyebrow,.page-heading .eyebrow{color:var(--ftl-accent)}
.section-label,.dark-link{color:var(--ftl-accent)}
.service-list,.service-list a,.detail-list,.detail-list article{border-color:var(--ftl-line)}
.service-list a{transition:background .25s}.service-list a:hover{background:var(--ftl-surface)}
.service-list a>span,.service-list b,.detail-list article>span{color:var(--ftl-accent)}
.contact-form{background:var(--ftl-surface);border-color:var(--ftl-line)}
.contact-form input,.contact-form textarea{background:var(--ftl-bg);color:var(--ftl-text);border-color:var(--ftl-line)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ftl-muted)}
.site-footer{background:var(--ftl-surface);color:var(--ftl-muted);border-color:var(--ftl-line)}
.thank-you,.error-page{background:radial-gradient(ellipse at 50% 30%,var(--ftl-surface),var(--ftl-bg));color:var(--ftl-text)}
.thank-you h1,.thank-you-whatsapp{color:var(--ftl-text)}
.thank-you h1 span,.thank-you-label,.error-number,.error-page h1 em{color:var(--ftl-accent)}
.thank-you p,.error-page p{color:var(--ftl-muted)}
.success-icon{color:var(--ftl-accent);border-color:var(--ftl-accent)}
.hero{color:#f3f1ec}.hero .eyebrow{color:#d9b76d}
.ftl-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}
.ftl-language{display:flex;gap:2px;padding:4px;border:1px solid var(--ftl-line);border-radius:30px;background:var(--ftl-bg)}
.ftl-language a{display:flex;align-items:center;justify-content:center;min-width:34px;height:32px;border-radius:20px;font-size:12px;font-weight:800}
.ftl-language a[aria-current=true]{background:#d9b76d;color:#102338}
.ftl-theme-toggle,.ftl-menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--ftl-line);border-radius:50%;background:var(--ftl-surface);color:var(--ftl-text);transition:border-color .2s,transform .2s}
.ftl-theme-toggle:hover,.ftl-menu-toggle:hover{border-color:#b99452;transform:translateY(-2px)}
.ftl-controls svg,.ftl-back-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ftl-sun{display:none}:root[data-theme=dark] .ftl-sun{display:block}:root[data-theme=dark] .ftl-moon{display:none}
.ftl-menu-toggle{display:none}
.ftl-back-top{position:fixed;right:26px;bottom:26px;bottom:max(26px,env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#102338;color:#e2bf78;border:1px solid #b99452;box-shadow:0 8px 26px #10233835;transition:transform .25s,background .25s,color .25s}
.ftl-back-top[hidden]{display:none}.ftl-back-top:hover{transform:translateY(-4px);background:#d9b76d;color:#102338}.ftl-back-top svg{width:25px;height:25px}
:focus-visible{outline:2px solid #b99452;outline-offset:5px}
@media(max-width:1050px){.header-inner{gap:14px}.logo img{width:190px}.site-header nav{gap:15px;font-size:.8rem}}
@media(max-width:850px){.header-inner{min-height:86px;flex-wrap:wrap;padding:14px 0}.logo img{width:150px}.ftl-controls{margin-left:auto;gap:7px}.ftl-menu-toggle{display:flex}.site-header nav{display:none;order:3;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:5px;padding-top:12px;border-top:1px solid var(--ftl-line)}.site-header nav.is-open{display:flex}.site-header nav a,.site-header nav a:not(.nav-contact){display:block;padding:13px 18px;border-radius:12px}.site-header nav a:hover{background:var(--ftl-bg)}.ftl-theme-toggle,.ftl-menu-toggle{width:40px;height:40px}.ftl-language a{min-width:30px;height:28px}.ftl-back-top{width:48px;height:48px;right:18px;bottom:18px}}
@media(max-width:370px){.logo img{width:120px}.ftl-controls{gap:4px}.ftl-language{padding:2px}.header-inner{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

:root[data-theme=light] .service-list a:hover .ftl-service-icon,:root[data-theme=light] .service-list a:focus-visible .ftl-service-icon,:root[data-theme=light] .detail-list article:hover .ftl-service-icon{color:#9a7437}

/* FTL dark-mode logo: preserve the original image in light mode. */
:root[data-theme="dark"] .site-header .logo img{content:url("../images/ftl-logo-dark.svg");background:transparent;padding:3px;border-radius:0;aspect-ratio:1024/281;object-fit:contain}
