:root{--bg-canvas:#fff;--bg-subtle:#f0f6fc;--bg-warm:#fff9f0;--bg-surface:#e6eff8;--bg-dark:#091526;--bg-dark-mid:#102542;--bg-dark-elevated:#173459;--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#475569;--text-inverse:#f8fafc;--text-inverse-muted:#dbeafe;--cobalt:#0369a1;--cobalt-bright:#0284c7;--cobalt-hover:#075985;--cobalt-soft:#e0f2fe;--accent:#c2410c;--accent-vivid:#ea580c;--accent-hover:#9a3412;--accent-soft:#ffedd5;--accent-on-dark:#fbbf24;--whatsapp:#15803d;--whatsapp-vivid:#16a34a;--whatsapp-hover:#166534;--border-light:#dbe6f3;--border-medium:#bfd1e6;--border-dark:#254166;--success-bg:#ecfdf5;--success-border:#6ee7b7;--success-text:#065f46;--error-bg:#fef2f2;--error-border:#fca5a5;--error-text:#991b1b;--font-display:"Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--container-max:1200px;--container-narrow:880px;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:5.5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration:.18s;--shadow-card:0 8px 24px -10px #0915261a;--shadow-card-hover:0 14px 30px -10px #0369a138}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:76px;font-size:16px;overflow-x:clip}body{font-family:var(--font-body);color:var(--text-secondary);background-color:var(--bg-canvas);-webkit-font-smoothing:antialiased;margin:0;padding-top:65px;font-size:1rem;line-height:1.65}main,.site-footer{overflow-x:clip}.detail-main,.sidebar-box,.notice-box,.card-body,.area-card,.step-card,.editorial-cell,.footer-grid>div{overflow-wrap:anywhere;min-width:0}img,svg{max-width:100%;height:auto;display:block}a{color:var(--cobalt);text-underline-offset:3px;transition:color var(--duration) var(--ease-out);text-decoration:underline;text-decoration-thickness:1px}a:hover{color:var(--accent)}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;text-wrap:balance;margin:0 0 .75rem;line-height:1.18}h1{font-size:clamp(2rem,3.8vw,3.25rem);font-weight:700}h2{font-size:clamp(1.5rem,2.5vw,2.125rem);font-weight:700}h3{font-size:1.25rem;font-weight:600}h4{font-size:1.0625rem;font-weight:600}p{max-width:72ch;margin:0 0 1rem}ul,ol{margin:0 0 1.25rem;padding-left:1.25rem}li{margin-bottom:.45rem}.tabular-nums{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--cobalt-bright);outline-offset:2px}.skip-link{z-index:1000;background:var(--bg-dark);color:var(--text-inverse);border-radius:var(--radius-sm);padding:.65rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gmp-quota-banner{color:#78350f;text-align:center;z-index:150;background-color:#fffbeb;border-bottom:1px solid #fcd34d;padding:.625rem 1rem;font-size:.875rem;position:sticky;top:0}.gmp-quota-banner[hidden]{display:none}.gmp-quota-banner a{color:#92400e;font-weight:600}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 1.25rem}.container-narrow{width:100%;max-width:var(--container-narrow);margin:0 auto;padding:0 1.25rem}.section{padding:var(--space-2xl) 0}.section-subtle{border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);background:linear-gradient(#f0f6fc 0%,#f8fbff 100%)}.section-dark{background:linear-gradient(135deg, var(--bg-dark) 0%, var(--bg-dark-mid) 60%, var(--bg-dark-elevated) 100%);color:var(--text-inverse)}.section-dark h2,.section-dark h3,.section-dark h4{color:var(--text-inverse)}.section-dark p{color:var(--text-inverse-muted)}.section-header{max-width:720px;margin-bottom:var(--space-xl)}.section-kicker{color:var(--accent);letter-spacing:.02em;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.section-dark .section-kicker{color:var(--accent-on-dark)}.site-header{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-light);width:100%;transition:box-shadow var(--duration) var(--ease-out), background-color var(--duration) var(--ease-out);background-color:#fffffff7;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 12px #0915260f}.site-header.is-scrolled{background-color:#fffffffc;box-shadow:0 8px 24px -8px #09152629}.site-header:after{content:"";background:linear-gradient(90deg, var(--cobalt) 0%, var(--cobalt-bright) 50%, var(--accent-vivid) 100%);width:100%;height:2px;display:block}.header-inner{justify-content:space-between;align-items:center;gap:2rem;height:62px;display:flex}.brand-link{font-family:var(--font-display);color:var(--text-primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:.65rem;text-decoration:none;display:inline-flex}.brand-link:hover .brand-wordmark-top{color:var(--cobalt)}.brand-mark{object-fit:contain;border-radius:4px;flex-shrink:0;width:40px;height:40px}.brand-wordmark{flex-direction:column;align-items:stretch;gap:2px;line-height:1;display:inline-flex}.brand-wordmark-top{font-family:var(--font-display);letter-spacing:.08em;color:#061c34;-webkit-text-stroke:.35px currentColor;text-transform:uppercase;text-align:center;transition:color var(--duration) var(--ease-out);padding:0 3px;font-size:1.25rem;font-weight:700;line-height:.9;display:block;transform:skew(-11deg)}.brand-wordmark-sub{color:#fff;font-family:var(--font-display);letter-spacing:.19em;text-transform:uppercase;text-align:center;background:linear-gradient(135deg,#f26508 0%,#d84c04 100%);border-radius:1px;padding:3px 9px 3px 10px;font-size:.54rem;font-weight:700;line-height:1;display:block;transform:skew(-11deg);box-shadow:0 1px 3px #d84c0440}.primary-nav{align-items:center;gap:1.75rem;display:flex}.nav-link{color:var(--text-secondary);white-space:nowrap;transition:color var(--duration) var(--ease-out), border-color var(--duration) var(--ease-out);border-bottom:2px solid #0000;flex-shrink:0;padding:.35rem 0;font-size:.9375rem;font-weight:500;text-decoration:none}.nav-link:hover,.nav-link[aria-current=page]{color:var(--cobalt);border-bottom-color:var(--accent-vivid)}.header-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.menu-toggle{background:var(--bg-subtle);border:1px solid var(--border-medium);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;padding:0;display:none}.mobile-drawer{border-top:1px solid var(--border-light);background-color:var(--bg-canvas);-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 56px);padding:1rem 1.25rem 1.5rem;display:none;overflow-y:auto;box-shadow:0 18px 36px -8px #09152638}.mobile-drawer.is-open{display:block}.mobile-nav-list{flex-direction:column;gap:.15rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.mobile-nav-link{min-height:44px;color:var(--text-primary);border-bottom:1px solid var(--border-light);align-items:center;padding:.6rem .25rem;font-size:1rem;font-weight:500;text-decoration:none;display:flex}.mobile-nav-link[aria-current=page]{color:var(--cobalt);font-weight:600}.mobile-drawer-ctas{grid-template-columns:1fr;gap:.625rem;display:grid}@media (width<=960px){.primary-nav,.header-desktop-cta{display:none}.menu-toggle{display:inline-flex}}@media (width<=640px){html{scroll-padding-top:66px}body{padding-top:57px}.header-inner{gap:.75rem;height:54px}.brand-link{gap:.5rem}.brand-mark{width:34px;height:34px}.brand-wordmark-top{letter-spacing:.06em;font-size:1.05rem}.brand-wordmark-sub{letter-spacing:.14em;padding:2px 7px 2px 8px;font-size:.48rem}.menu-toggle{width:44px;height:44px}}.btn{min-height:44px;font-family:var(--font-body);white-space:nowrap;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--duration) var(--ease-out), color var(--duration) var(--ease-out), border-color var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out), transform var(--duration) var(--ease-out);border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.9375rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(135deg, var(--cobalt-bright) 0%, var(--cobalt) 100%);color:#fff;box-shadow:0 4px 14px -4px #0369a173}.btn-primary:hover{background:linear-gradient(135deg, var(--cobalt) 0%, var(--cobalt-hover) 100%);color:#fff}.btn-accent{background:linear-gradient(135deg, var(--accent-vivid) 0%, var(--accent) 100%);color:#fff;box-shadow:0 4px 14px -4px #c2410c73}.btn-accent:hover{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);color:#fff}.btn-whatsapp,a[href*=wa\.me].btn{background:linear-gradient(135deg, var(--whatsapp-vivid) 0%, var(--whatsapp) 100%);color:#fff;border-color:#0000;box-shadow:0 4px 14px -4px #15803d73}.btn-whatsapp:hover,a[href*=wa\.me].btn:hover{background:linear-gradient(135deg, var(--whatsapp) 0%, var(--whatsapp-hover) 100%);color:#fff}.btn-outline{background-color:var(--bg-canvas);color:var(--text-primary);border-color:var(--border-medium)}.btn-outline:hover{background-color:var(--cobalt-soft);color:var(--cobalt-hover);border-color:var(--cobalt)}.btn-outline-inverse{color:var(--text-inverse);background-color:#ffffff1a;border-color:#ffffff57}.btn-outline-inverse:hover{color:#fff;background-color:#fff3;border-color:#fff}.btn-sm{min-height:38px;padding:.45rem .95rem;font-size:.875rem}.cta-group{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.breadcrumb-bar{border-bottom:1px solid var(--border-light);background-color:var(--bg-subtle);padding:.8rem 0}.breadcrumb-list{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.breadcrumb-list li{align-items:center;gap:.5rem;margin:0;display:inline-flex}.breadcrumb-list li+li:before{content:"/";color:var(--border-medium)}.breadcrumb-list a{color:var(--cobalt);font-weight:500;text-decoration:none}.breadcrumb-list a:hover{color:var(--accent);text-decoration:underline}.page-hero{padding:var(--space-xl) 0 var(--space-xl);background:radial-gradient(circle at 86% 20%, #f59e0b38, transparent 46%), radial-gradient(circle at 12% 85%, #0ea5e938, transparent 50%), linear-gradient(135deg, var(--bg-dark) 0%, var(--bg-dark-mid) 56%, var(--bg-dark-elevated) 100%);border-bottom:3px solid var(--accent-vivid);color:var(--text-inverse);position:relative;overflow:hidden}.page-hero h1{color:#fff}.page-hero .section-kicker{color:var(--accent-on-dark)}.page-hero-lead{color:var(--text-inverse-muted);max-width:68ch;margin-bottom:1.5rem;font-size:1.125rem}.page-hero .btn-outline,.hero-section .btn-outline{color:#fff;background-color:#ffffff1f;border-color:#ffffff5c}.page-hero .btn-outline:hover,.hero-section .btn-outline:hover{color:#fff;background-color:#ffffff38;border-color:#fff}.hero-section{padding:var(--space-xl) 0 var(--space-2xl);border-bottom:3px solid var(--accent-vivid);color:var(--text-inverse);background:radial-gradient(circle at 84% 18%,#f59e0b3d,#0000 48%),radial-gradient(circle at 10% 82%,#38bdf833,#0000 48%),linear-gradient(135deg,#091526 0%,#102645 52%,#173866 100%);position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:stretch;gap:2.5rem;display:grid}.hero-content{flex-direction:column;justify-content:center;padding:.5rem 0;display:flex}.hero-content h1{color:#fff}.hero-heading-link,.hero-heading-link:hover,.hero-heading-link:visited,.hero-heading-link:focus-visible{color:inherit;text-decoration:none}.hero-meta{color:var(--accent-on-dark);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;font-weight:600;display:flex}.hero-lead{color:var(--text-inverse-muted);max-width:58ch;margin-bottom:1.75rem;font-size:1.09375rem}.hero-media{border-radius:var(--radius-md);background-color:var(--bg-dark-elevated);border:1px solid #94a3b852;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px -16px #0000008c}.hero-media img{object-fit:cover;width:100%;height:100%;min-height:320px}.hero-media-caption{color:var(--text-inverse-muted);background-color:#091526eb;border-top:1px solid #94a3b840;padding:.75rem 1rem;font-size:.8125rem}.hero-facts-strip{grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.25rem;display:grid}.fact-cell{border-radius:var(--radius-md);border:1px solid #ffffff40;border-top:3px solid var(--cobalt-bright);background-color:#fffffffa;padding:1.125rem 1.25rem;box-shadow:0 10px 24px -12px #00000073}.fact-cell:nth-child(2){border-top-color:var(--accent-vivid)}.fact-cell:nth-child(3){border-top-color:var(--whatsapp-vivid)}.fact-cell:nth-child(4){border-top-color:var(--cobalt)}.fact-label{color:var(--text-muted);margin-bottom:.25rem;font-size:.8125rem;font-weight:500;display:block}.fact-value{font-family:var(--font-display);color:var(--text-primary);font-size:1rem;font-weight:700;display:block}@media (width<=960px){.hero-grid{grid-template-columns:1fr;gap:1.75rem}.hero-facts-strip{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.hero-facts-strip{grid-template-columns:1fr}}.grid-2{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.grid-3,.bento-services{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}@media (width<=960px){.grid-3,.bento-services{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.grid-2,.grid-3,.bento-services{grid-template-columns:1fr}}.card{background-color:var(--bg-canvas);border:1px solid var(--border-light);border-top:3px solid var(--cobalt-bright);border-radius:var(--radius-md);box-shadow:var(--shadow-card);transition:border-color var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out), transform var(--duration) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.card:nth-child(3n+2){border-top-color:var(--accent-vivid)}.card:nth-child(3n+3){border-top-color:var(--whatsapp-vivid)}.card:hover{border-color:var(--cobalt-bright);box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.card-media{aspect-ratio:4/3;background-color:var(--bg-subtle);border-bottom:1px solid var(--border-light);overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .28s var(--ease-out)}.card:hover .card-media img{transform:scale(1.04)}.card-body{flex-direction:column;flex:1;padding:1.25rem 1.375rem;display:flex}.meta-inline{color:var(--cobalt);flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:flex}.card-title{margin-bottom:.5rem;font-size:1.1875rem}.card-title a{color:var(--text-primary);text-decoration:none}.card-title a:hover{color:var(--cobalt)}.card-desc{color:var(--text-secondary);flex:1;margin-bottom:1.125rem;font-size:.9375rem}.card-link{color:var(--accent);align-items:center;gap:.35rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.card-link:hover{color:var(--cobalt);text-decoration:underline}.editorial-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}.editorial-cell{background-color:var(--bg-canvas);border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:1.5rem}.editorial-cell:nth-child(2n){border-top-color:var(--accent-vivid)}.editorial-num{font-family:var(--font-mono);color:var(--cobalt);margin-bottom:.4rem;font-size:.875rem;font-weight:600;display:block}.editorial-cell:nth-child(2n) .editorial-num{color:var(--accent)}@media (width<=720px){.editorial-grid{grid-template-columns:1fr}}.steps-grid{grid-template-columns:repeat(5,1fr);gap:1rem;display:grid}.step-card{border:1px solid var(--border-light);border-top:3px solid var(--accent-vivid);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:linear-gradient(#fff 0%,#f8fbff 100%);padding:1.25rem}.step-card:nth-child(2n){border-top-color:var(--cobalt-bright)}.step-index{font-family:var(--font-mono);color:var(--accent);margin-bottom:.5rem;font-size:.8125rem;font-weight:600;display:inline-block}.step-card:nth-child(2n) .step-index{color:var(--cobalt)}@media (width<=960px){.steps-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.steps-grid{grid-template-columns:1fr}}.detail-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);align-items:start;gap:2.5rem;display:grid}.detail-main h2{margin-top:2.25rem}.detail-main h2:first-child{margin-top:0}.detail-sidebar{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:84px}.sidebar-box{border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:linear-gradient(#f0f6fc 0%,#fff 100%);padding:1.375rem}.sidebar-box h3{color:var(--bg-dark);margin-bottom:.75rem;font-size:1.0625rem}.sidebar-links{margin:0;padding:0;list-style:none}.sidebar-links li{border-bottom:1px solid var(--border-light);margin:0}.sidebar-links li:last-child{border-bottom:none}.sidebar-links a{color:var(--cobalt);padding:.55rem 0;font-size:.9375rem;font-weight:500;text-decoration:none;display:block}.sidebar-links a:hover{color:var(--accent)}@media (width<=900px){.detail-layout{grid-template-columns:1fr}.detail-sidebar{position:static}}.spec-table-wrap{-webkit-overflow-scrolling:touch;border:1px solid var(--border-light);border-radius:var(--radius-md);max-width:100%;box-shadow:var(--shadow-card);margin:1.25rem 0 1.75rem;overflow-x:auto}.spec-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9375rem}.spec-table th,.spec-table td{border-bottom:1px solid var(--border-light);padding:.75rem 1rem}.spec-table th{background-color:var(--bg-dark-mid);font-family:var(--font-display);color:#fff;font-weight:600}.spec-table tr:nth-child(2n) td{background-color:#f8fbff}.spec-table tr:last-child td{border-bottom:none}.filter-tabs{background-color:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-wrap:wrap;gap:.375rem;margin-bottom:1.75rem;padding:.375rem;display:inline-flex}.filter-btn{min-height:38px;font-family:var(--font-body);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--duration) var(--ease-out), color var(--duration) var(--ease-out);background:0 0;border:none;padding:.45rem .95rem;font-size:.875rem;font-weight:500}.filter-btn:hover{color:var(--cobalt)}.filter-btn.is-active{background-color:var(--cobalt);color:#fff;box-shadow:0 2px 6px #0369a147}.project-card[hidden]{display:none}.gallery-trigger{cursor:zoom-in;text-align:left;background:0 0;border:none;width:100%;padding:0;display:block}.lightbox{z-index:500;background-color:#091526d6;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.lightbox[hidden]{display:none}.lightbox-dialog{background-color:var(--bg-canvas);border-radius:var(--radius-md);border:1px solid var(--border-medium);width:100%;max-width:820px;position:relative;overflow:hidden}.lightbox-header{border-bottom:1px solid var(--border-light);background-color:var(--bg-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;display:flex}.lightbox-title{margin:0;font-size:1rem}.lightbox-close{border:1px solid var(--border-medium);border-radius:var(--radius-sm);background:var(--bg-canvas);width:44px;height:44px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.lightbox-body{padding:1rem 1.25rem 1.25rem}.lightbox-img{object-fit:contain;background-color:var(--bg-subtle);border:1px solid var(--border-light);border-radius:var(--radius-sm);width:100%;max-height:65vh;margin-bottom:.75rem}.lightbox-caption{color:var(--text-secondary);margin:0;font-size:.9375rem}.faq-list{border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);background-color:var(--bg-canvas);box-shadow:var(--shadow-card);flex-direction:column;display:flex;overflow:hidden}.faq-item{border-bottom:1px solid var(--border-light)}.faq-item:last-child{border-bottom:none}.faq-question{width:100%;font-family:var(--font-display);color:var(--text-primary);text-align:left;cursor:pointer;transition:background-color var(--duration) var(--ease-out), color var(--duration) var(--ease-out);background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.125rem 1.25rem;font-size:1.0625rem;font-weight:600;display:flex}.faq-question:hover,.faq-question[aria-expanded=true]{background-color:var(--bg-subtle);color:var(--cobalt)}.faq-icon{color:var(--accent);transition:transform var(--duration) var(--ease-out);flex-shrink:0}.faq-question[aria-expanded=true] .faq-icon{transform:rotate(45deg)}.faq-answer{color:var(--text-secondary);padding:0 1.25rem 1.25rem}.js-ready .faq-answer[hidden]{display:none}.enquiry-form{grid-template-columns:repeat(2,1fr);gap:1.125rem;display:grid}.form-field{flex-direction:column;gap:.375rem;display:flex}.form-field-full{grid-column:1/-1}.form-label{color:var(--text-primary);font-size:.875rem;font-weight:600}.form-input,.form-select,.form-textarea{width:100%;min-height:44px;font-family:var(--font-body);color:var(--text-primary);background-color:var(--bg-canvas);border:1px solid var(--border-medium);border-radius:var(--radius-sm);transition:border-color var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out);padding:.625rem .875rem;font-size:1rem}.form-textarea{resize:vertical;min-height:112px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--cobalt);outline:none;box-shadow:0 0 0 3px #0369a129}.form-input[aria-invalid=true],.form-select[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:var(--error-text)}.field-error{color:var(--error-text);min-height:1.1em;font-size:.8125rem;font-weight:500}.form-status{border-radius:var(--radius-sm);grid-column:1/-1;padding:.875rem 1rem;font-size:.9375rem;font-weight:500}.form-status[hidden]{display:none}.form-status-success{background-color:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.form-status-error{background-color:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}@media (width<=640px){.enquiry-form{grid-template-columns:1fr}}.map-box{border:1px solid var(--border-light);border-top:3px solid var(--accent-vivid);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:linear-gradient(#f0f6fc 0%,#fff 100%);padding:1.5rem}.map-box-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.map-box-title{color:var(--text-primary);margin:0 0 .25rem}.map-box-coords{color:var(--text-muted);margin:0;font-size:.875rem}.map-toolbar{background-color:var(--bg-surface);border:1px solid var(--border-medium);border-radius:var(--radius-sm);align-items:center;gap:.25rem;padding:.25rem;display:inline-flex}.map-toolbar[hidden]{display:none}.map-mode-btn{min-height:36px;font-family:var(--font-body);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:background-color var(--duration) var(--ease-out), color var(--duration) var(--ease-out);background:0 0;border:none;border-radius:4px;padding:.35rem .75rem;font-size:.8125rem;font-weight:600}.map-mode-btn:hover{color:var(--cobalt)}.map-mode-btn.is-active{background-color:var(--cobalt);color:#fff}.workshop-map-canvas{border:1px solid var(--border-medium);border-radius:var(--radius-sm);background-color:var(--bg-surface);width:100%;height:420px;min-height:320px;position:relative;overflow:hidden}.map-loading-state{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:.9375rem;display:flex}.map-embed-frame,.workshop-map-canvas iframe{border:0;width:100%;height:100%;display:block}.map-infowindow-body{font-family:var(--font-body);padding-top:.25rem}.map-infowindow-text{color:var(--text-secondary);margin:0 0 .5rem;font-size:.875rem}.map-infowindow-links{flex-wrap:wrap;gap:.75rem;font-size:.8125rem;font-weight:600;display:flex}.notice-box{background-color:var(--bg-canvas);border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:1.25rem 1.375rem;font-size:.9375rem}.area-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.area-card{background-color:var(--bg-canvas);border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);box-shadow:var(--shadow-card);flex-direction:column;padding:1.25rem;display:flex}.area-card:nth-child(2n){border-top-color:var(--accent-vivid)}.area-card-title{margin-bottom:.375rem;font-size:1.125rem}.area-card-links{border-top:1px solid var(--border-light);color:var(--text-muted);margin:.75rem 0 0;padding-top:.75rem;font-size:.875rem}.area-card-links a{font-weight:600}.hierarchy-panel{border:1px solid var(--border-light);border-top:3px solid var(--cobalt);border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:linear-gradient(#f0f6fc 0%,#fff 100%);padding:1.5rem}.hierarchy-columns{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem;display:grid}.hierarchy-list{margin:0;padding:0;font-size:.9375rem;list-style:none}.hierarchy-list li{border-bottom:1px solid var(--border-light);margin:0;padding:.35rem 0}.hierarchy-list li:last-child{border-bottom:none}@media (width<=960px){.area-grid,.hierarchy-columns{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.area-grid,.hierarchy-columns{grid-template-columns:1fr}}.site-footer{background:linear-gradient(180deg, var(--bg-dark) 0%, #060f1c 100%);color:var(--text-inverse-muted);padding:var(--space-2xl) 0 var(--space-xl);border-top:3px solid var(--cobalt-bright)}.footer-grid{padding-bottom:var(--space-xl);border-bottom:1px solid var(--border-dark);grid-template-columns:1.35fr 1fr 1fr 1fr;gap:2rem;display:grid}.footer-brand{font-family:var(--font-display);color:var(--accent-on-dark);margin-bottom:.75rem;font-size:1.125rem;font-weight:700}.footer-heading{font-family:var(--font-display);color:#fff;margin:0 0 .875rem;font-size:.9375rem;font-weight:600}.footer-links{margin:0;padding:0;list-style:none}.footer-links li{margin-bottom:.45rem}.footer-links a,.footer-contact-link{color:var(--text-inverse-muted);font-size:.9375rem;text-decoration:none}.footer-links a:hover,.footer-contact-link:hover{color:var(--accent-on-dark);text-decoration:underline}.footer-bottom{color:var(--text-inverse-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding-top:1.25rem;font-size:.875rem;display:flex}.footer-meta{flex-wrap:wrap;align-items:center;gap:.35rem .55rem;display:flex}.footer-credit-link{color:var(--accent-on-dark);text-underline-offset:3px;font-weight:600;text-decoration:underline}.footer-credit-link:hover{color:#fde68a}.footer-legal{flex-wrap:wrap;gap:1.25rem;display:flex}.footer-legal a{color:var(--text-inverse-muted);text-decoration:none}.footer-legal a:hover{color:var(--accent-on-dark);text-decoration:underline}@media (width<=960px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=540px){.footer-grid{grid-template-columns:1fr}}.floating-actions{z-index:950;pointer-events:auto;flex-direction:column;align-items:flex-end;gap:.625rem;display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.fab-btn{height:46px;font-family:var(--font-display);color:#fff;white-space:nowrap;transition:transform var(--duration) var(--ease-out), box-shadow var(--duration) var(--ease-out), filter var(--duration) var(--ease-out);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;padding:0 1.05rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 10px 24px -6px #09152661}.fab-btn:hover{color:#fff;transform:translateY(-2px);box-shadow:0 14px 28px -6px #0915267a}.fab-call{background:linear-gradient(135deg, var(--accent-vivid) 0%, var(--accent) 100%)}.fab-call:hover{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%)}.fab-whatsapp{background:linear-gradient(135deg, var(--whatsapp-vivid) 0%, var(--whatsapp) 100%)}.fab-whatsapp:hover{background:linear-gradient(135deg, var(--whatsapp) 0%, var(--whatsapp-hover) 100%)}.back-to-top{z-index:940;background-color:var(--bg-dark-mid);width:44px;height:44px;color:var(--text-inverse);border:1px solid var(--border-dark);cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--duration) var(--ease-out), transform var(--duration) var(--ease-out), background-color var(--duration) var(--ease-out);border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:fixed;bottom:8.5rem;right:1.25rem;transform:translateY(8px);box-shadow:0 8px 18px -6px #09152666}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background-color:var(--cobalt);border-color:var(--cobalt-bright)}@media (width<=640px){.container,.container-narrow{padding:0 1rem}.section{padding:2.5rem 0}.section-header{margin-bottom:1.5rem}.hero-section,.page-hero{padding:1.75rem 0 2.25rem}.hero-lead,.page-hero-lead{font-size:1rem}.hero-media img{min-height:210px;max-height:280px}.cta-group{flex-direction:column;align-items:stretch}.cta-group .btn{white-space:normal;text-align:center;width:100%;min-height:46px}.btn-sm{min-height:44px}.sidebar-links a,.footer-links a,.hierarchy-list a{align-items:center;min-height:44px;display:inline-flex}.filter-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;max-width:100%;display:flex;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.filter-btn{flex-shrink:0;min-height:44px}.spec-table th,.spec-table td{padding:.625rem .75rem;font-size:.875rem}.faq-question{min-height:52px;padding:1rem;font-size:1rem}.map-box{padding:1rem}.map-toolbar{flex-wrap:wrap;width:100%}.map-mode-btn{flex:auto;min-height:42px}.workshop-map-canvas{height:280px;min-height:260px}.site-footer{padding:2.5rem 0 calc(4.75rem + env(safe-area-inset-bottom,0px))}.floating-actions{right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom,0px));flex-direction:row;align-items:center;gap:.5rem}.fab-btn{height:44px;padding:0 .9rem;font-size:.8125rem}.back-to-top{right:.75rem;bottom:calc(4.15rem + env(safe-area-inset-bottom,0px));width:44px;height:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
