@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Bebas+Neue&family=Space+Mono:wght@400;700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/remixicon@4.2.0/fonts/remixicon.css');

/* ============ Tokens ============ */
:root{
  --blue-50:oklch(97% 0.013 233);
  --blue-100:oklch(94% 0.028 233);
  --blue-200:oklch(88% 0.052 233);
  --blue-500:oklch(68.5% 0.137 232.6);
  --blue-600:oklch(56.2% 0.114 233.5);
  --blue-700:oklch(50.0% 0.101 233.0);
  --blue-800:oklch(40.4% 0.082 234.5);
  --blue-900:oklch(28.8% 0.055 234.0);
  --navy-100:oklch(94% 0.035 261.5);
  --navy-800:oklch(34.5% 0.142 261.5);
  --navy-900:oklch(31.2% 0.139 261.5);
  --navy-950:oklch(21% 0.11 261.5);
  --amber-400:oklch(81% 0.145 74);
  --amber-500:oklch(77.7% 0.165 73.2);
  --amber-600:oklch(61.7% 0.134 69.4);
  --amber-700:oklch(51.2% 0.111 69.4);
  --gray-0:#fff;
  --gray-50:oklch(98.2% 0.003 233);
  --gray-100:oklch(96% 0.004 233);
  --gray-200:oklch(91.5% 0.006 233);
  --gray-300:oklch(85% 0.008 233);
  --gray-400:oklch(72% 0.011 233);
  --gray-600:oklch(47% 0.014 233);
  --gray-900:oklch(19.5% 0.011 233);
  --gray-950:oklch(14% 0.009 233);
  --green-100:oklch(95% 0.045 152);
  --green-700:oklch(38% 0.11 150);
  --red-500:oklch(56% 0.19 23);

  --color-interactive:var(--blue-700);
  --color-interactive-hover:var(--blue-800);
  --color-accent:var(--amber-500);
  --surface-page:var(--gray-0);
  --surface-canvas:var(--gray-50);
  --surface-card:var(--gray-0);
  --surface-sunken:var(--gray-100);
  --surface-inverse:var(--navy-900);
  --text-primary:var(--gray-900);
  --text-secondary:var(--gray-600);
  --text-tertiary:var(--gray-400);
  --text-inverse-primary:var(--gray-0);
  --text-inverse-secondary:var(--navy-100);
  --text-link:var(--blue-700);
  --text-link-hover:var(--blue-800);
  --border-default:var(--gray-200);
  --border-strong:var(--gray-300);
  --border-focus:var(--blue-600);

  --font-display:'Bebas Neue', system-ui, sans-serif;
  --font-body:'Montserrat', system-ui, sans-serif;
  --font-mono:'Space Mono', ui-monospace, monospace;

  --text-xs:0.75rem; --text-sm:0.875rem; --text-base:1rem; --text-md:1.125rem;
  --text-lg:1.375rem; --text-xl:1.75rem; --text-2xl:2.25rem;
  --leading-tight:1.1; --leading-snug:1.25; --leading-normal:1.5; --leading-relaxed:1.65;
  --tracking-wide:0.03em; --tracking-label:0.08em;

  --space-1:0.25rem; --space-2:0.5rem; --space-3:0.75rem; --space-4:1rem; --space-5:1.25rem;
  --space-6:1.5rem; --space-8:2rem; --space-10:2.5rem; --space-12:3rem; --space-16:4rem; --space-20:5rem;
  --container-max:1280px;
  --page-margin:clamp(1.25rem, 4vw, 3rem);

  --radius-sm:4px; --radius-md:6px; --radius-lg:10px;
  --shadow-xs:0 1px 2px oklch(21% 0.045 233 / .08);
  --shadow-sm:0 1px 3px oklch(21% 0.045 233 / .10), 0 1px 2px oklch(21% 0.045 233 / .06);
  --shadow-md:0 6px 16px oklch(21% 0.045 233 / .12), 0 2px 4px oklch(21% 0.045 233 / .06);
  --shadow-lg:0 16px 32px oklch(21% 0.045 233 / .16), 0 4px 8px oklch(21% 0.045 233 / .08);
  --shadow-focus-ring:0 0 0 3px oklch(68.5% 0.137 232.6 / .40);
  --ease-standard:cubic-bezier(.2,.7,.2,1);
  --duration-fast:140ms; --duration-base:200ms;
}

/* ============ Base ============ */
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--surface-page)}
h1,h2{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:var(--tracking-wide);line-height:var(--leading-tight);margin:0;color:var(--text-primary)}
h3,h4{font-family:var(--font-display);font-weight:400;line-height:var(--leading-tight);margin:0;color:var(--text-primary)}
.section-navy h1,.section-navy h2,.section-navy h3,.section-navy h4{color:var(--text-inverse-primary)}
p{margin:0}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover);text-decoration:underline}
img{max-width:100%;display:block}
::selection{background:var(--blue-200)}
:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring);border-radius:var(--radius-sm)}
/* .container{max-width:var(--container-max);margin:0 auto;padding:0 var(--page-margin)} */
.sect-lp ul{
    list-style: none;
    font-size: var(--text-md);
    line-height: var(--leading-relaxed);
    padding-left: 1.4em;
    margin: 0 0 var(--space-10);
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}
.sect-lp ul li::before {
    content: '';
    display: inline-block;
    width: 9px;
    height: 9px;
    background: var(--amber-500);
    margin-right: 12px;
    margin-left: -21px;
    vertical-align: middle;
    margin-top: 8px;
    flex-shrink: 0; /* evita que el bullet se achique si el texto es largo */
}
.sect-lp ul li {
    display: flex;
    align-items: flex-start; /* alinea el bullet con la primera línea del texto */
    color: var(--text-secondary);
}
.section-navy .sect-lp ul li {
    color: var(--text-inverse-secondary);
}
.sect-lp ul li p {
    margin: 0; /* quita el margin-bottom que hereda de .section p */
}
.sect-lp h2 {
    scroll-margin-top: 50px;
}
.sect-lp table{
    width: 100%;
    /* min-width: 520px; */
    border-collapse: collapse;
    margin-bottom: var(--space-8);
}
.sect-lp table th:first-child, .sect-lp table td:first-child {
    padding-left: 0;
}
.sect-lp table th {
    text-align: left;
    padding: 12px 16px;
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: var(--tracking-label);
    color: var(--text-secondary);
    border-bottom: 2px solid var(--border-strong);
}
.section-navy .sect-lp table th {
    color: var(--text-inverse-secondary);
}
.sect-lp table td:first-child {
    color: var(--text-primary);
}
.section-navy .sect-lp table td:first-child {
    color: var(--text-inverse-primary);
}
.sect-lp table td {
    padding: 12px 16px;
    font-size: var(--text-sm);
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-default);
}
.section-navy .sect-lp table td {
    color: var(--text-inverse-secondary);
}

.sect-lp table td p{
    font-size: var(--text-sm);
}
.sect-lp img{
    border-radius: var(--radius-lg);
    width: 100%;
    object-fit: cover;
    height: clamp(200px, 36vw, 420px);
    margin-bottom: 60px;
}
.section>.container {
    padding-left: 3rem;
    padding-right: 3rem;
}
.horizontal-scroll-wrapper{
        overflow-x: auto;
}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ============ Header ============ */
.site-header{position:relative;font-family:var(--font-body)}
.utility-bar{background:var(--surface-inverse);color:var(--text-inverse-secondary)}
.utility-bar .container{height:36px;display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs)}
.utility-bar a{color:inherit;text-decoration:none}
.utility-bar a:hover{color:#fff;text-decoration:underline}
.utility-social{display:flex;gap:14px;align-items:center}
.utility-right{display:flex;gap:18px;align-items:center}
.utility-right .phone{display:flex;gap:6px;align-items:center}
.utility-right .utility-cta{color:#fff;font-weight:600}
.nav-bar{background:var(--surface-card);border-bottom:1px solid var(--border-default)}
.nav-bar .container{min-height:76px;display:flex;align-items:center;gap:32px}
.brand{flex:none;display:flex}
.brand img{height:34px;width:auto}
.main-nav{display:none;gap:22px;flex:1;min-width:0}
.main-nav>li{position:relative;flex:none;list-style:none}
.main-nav>li>a{display:flex;align-items:center;gap:4px;height:76px;color:var(--text-primary);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-label);white-space:nowrap;text-decoration:none}
.main-nav>li:hover>a,.main-nav>li:focus-within>a{color:var(--color-interactive)}
.submenu{position:absolute;top:100%;left:0;min-width:240px;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-2);margin:0;list-style:none;z-index:20;display:none}
.main-nav>li:hover .submenu,.main-nav>li:focus-within .submenu{display:block}
.submenu a{display:block;padding:9px 12px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:400;color:var(--text-secondary);text-decoration:none}
.submenu a:hover{background:var(--surface-canvas);color:var(--color-interactive);text-decoration:none}
.nav-toggle{margin-left:auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;background:none;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);font-size:20px;cursor:pointer}
.mobile-nav{display:none;border-top:1px solid var(--border-default);margin:0;padding:0;list-style:none}
.mobile-nav[data-open="true"]{display:block}
.mobile-nav>li{border-bottom:1px solid var(--border-default)}
.mobile-nav>li>a{display:block;padding:14px var(--page-margin);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-primary);text-decoration:none;min-height:48px}
@media (min-width:1101px){
  .main-nav{display:flex}
  .nav-toggle,.mobile-nav{display:none!important}
}

/* ============ Buttons ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;font-family:var(--font-body);font-size:var(--text-md);font-weight:600;line-height:1;border-radius:var(--radius-sm);border:none;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}
.btn:hover{text-decoration:none}
.btn-accent{background:var(--color-accent);color:var(--gray-950)}
.btn-accent:hover{background:var(--amber-600);color:var(--gray-950)}
.btn-accent:active{background:var(--amber-700)}
.btn-primary{background:var(--color-interactive);color:#fff}
.btn-primary:hover{background:var(--color-interactive-hover);color:#fff}
.btn-outline-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:var(--radius-md)}
.btn-outline-light:hover{background:#fff;color:var(--navy-900);border-color:#fff}

/* ============ Breadcrumb ============ */
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-4) 0 0;margin:0;list-style:none}
.breadcrumb li{display:flex;align-items:center;gap:4px}
.breadcrumb i{color:var(--text-tertiary)}
.breadcrumb a{color:var(--text-secondary)}
.breadcrumb [aria-current]{color:var(--text-primary);font-weight:600}

/* ============ Hero ============ */
.hero{position:relative;overflow:hidden;background:var(--navy-950);padding:var(--space-16) 0 var(--space-20);margin-top:var(--space-4);min-height:unset;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(165deg,rgba(0,16,48,.72),rgba(0,40,117,.62) 65%)}
.hero-inner{position:relative;max-width:840px;margin:0 auto;padding:0 var(--page-margin);display:flex;flex-direction:column;gap:var(--space-6)}
.hero h1{color:#fff;font-size:clamp(2.25rem,5vw + 1rem,3.5rem)}
.hero p{color:var(--text-inverse-secondary);font-size:var(--text-md);line-height:var(--leading-relaxed)}
.hero-actions{display:flex;gap:var(--space-4);flex-wrap:wrap}

/* ============ Trust strip ============ */
.trust{background:var(--navy-900)}
.trust .container{padding-top:var(--space-6);padding-bottom:var(--space-6);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6) var(--space-8)}
.trust-item{display:flex;align-items:center;gap:var(--space-4)}
.trust-item i{color:var(--amber-500);font-size:40px;line-height:1;flex:none}
.trust-item span{color:var(--text-inverse-secondary);font-size:1rem;line-height:var(--leading-snug)}

/* ============ Answer box ============ */
.answer-box{background:var(--surface-canvas);border-bottom:1px solid var(--border-default)}
.answer-box .container{padding-top:var(--space-10);padding-bottom:var(--space-10)}
.answer-box p{color:var(--text-primary);font-size:var(--text-md);line-height:var(--leading-relaxed)}

/* ============ Table of contents ============ */
.toc-mobile{position:sticky;top:0;z-index:60;background:var(--surface-page);border-bottom:1px solid var(--border-default);margin-top:var(--space-6)}
.toc-mobile .container{position:relative;padding-top:var(--space-3);padding-bottom:var(--space-3)}
.toc-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:48px;padding:0 18px;background:var(--navy-900);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;cursor:pointer}
.toc-toggle span{display:flex;align-items:center;gap:8px}
.toc-panel{position:absolute;left:var(--page-margin);right:var(--page-margin);top:calc(100% - var(--space-2));background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-5);max-height:60vh;overflow-y:auto;margin:0;list-style:none;display:none;flex-direction:column;gap:var(--space-3);z-index:61}
.toc-panel[data-open="true"]{display:flex}
.toc-panel a,.toc-desktop nav a{display:flex;gap:10px;align-items:flex-start;font-size:var(--text-sm);line-height:var(--leading-snug);color:var(--text-secondary);text-decoration:none}
.toc-panel a{min-height:44px;align-items:center}
.toc-panel a:hover,.toc-desktop nav a:hover{color:var(--color-interactive);text-decoration:none}
.toc-num{color:var(--amber-600);font-weight:600;flex:none}
.toc-desktop{display:none}
.article-wrap{position:relative}
@media (min-width:1101px){
  .toc-mobile{display:none}
  .article-wrap{padding-left:312px}
  .toc-desktop{display:block;position:absolute;top:var(--space-16);left:var(--page-margin);width:264px;height:calc(100% - var(--space-16))}
  .toc-card{position:sticky;top:var(--space-6);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}
}
.toc-eyebrow{margin:0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);font-weight:600;color:var(--color-interactive)}
.toc-desktop nav{display:flex;flex-direction:column;gap:var(--space-4);border-top:1px solid var(--border-default);padding-top:var(--space-4)}
.toc-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--navy-900);color:#fff;text-decoration:none;border-radius:var(--radius-md);padding:14px 18px;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-label);line-height:var(--leading-snug)}
.toc-cta:hover{background:var(--navy-800);color:#fff;text-decoration:none}

/* ============ Article sections ============ */
.section{padding:var(--space-16) 0 0}
.section-canvas{background:var(--surface-canvas);margin-top:var(--space-16); padding: 0;}
.section-canvas>.container{padding-top:var(--space-16);padding-bottom:var(--space-16)}
.section-navy{background:var(--surface-inverse);margin-top:var(--space-16)}
.section-navy>.container{padding-top:var(--space-16);padding-bottom:var(--space-16)}
.section h2{font-size:var(--text-2xl);margin-bottom:var(--space-5)}
.section-navy h2{color:#fff}
.section h3, .sectsubth{font-size:var(--text-xl);margin-bottom:var(--space-4)}
.section h4{font-size:var(--text-lg)}
.section p{color:var(--text-secondary);font-size:var(--text-md);line-height:var(--leading-relaxed);margin-bottom:var(--space-6)}
.section-navy p{color:var(--text-inverse-secondary)}
.section figure{margin:0 0 var(--space-10)}
.section figure img{border-radius:var(--radius-lg);width:100%;object-fit:cover;height:clamp(200px,36vw,420px)}
.section-navy figure img{height:clamp(180px,30vw,360px)}
.sectsubth {
    text-transform: uppercase;
    font-size: 20px;
    margin: 0;
}
.titulopds{
        margin-bottom: 30px !important;
    display: table;
    margin-top: 50px;
}
.section-navy{
    padding: 0;
}
/* Lists */
.list-marked{list-style:none;color:var(--text-secondary);font-size:var(--text-md);line-height:var(--leading-relaxed);padding-left:1.4em;margin:0 0 var(--space-10);display:flex;flex-direction:column;gap:var(--space-3)}
.list-marked li::before{content:'';display:inline-block;width:9px;height:9px;background:var(--amber-500);margin-right:12px;margin-left:-21px;vertical-align:middle}
.list-marked strong{color:var(--text-primary)}

/* Data table */
.table-wrap{overflow-x:auto;margin-bottom:var(--space-8)}
.data-table{width:100%;min-width:520px;border-collapse:collapse}
.data-table th{text-align:left;padding:12px 16px;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-secondary);border-bottom:2px solid var(--border-strong)}
.data-table td{padding:12px 16px;font-size:var(--text-sm);color:var(--text-secondary);border-bottom:1px solid var(--border-default)}
.data-table th:first-child,.data-table td:first-child{padding-left:0}
.data-table td:first-child{color:var(--text-primary)}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-5);margin-bottom:var(--space-10)}
.info-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}
.info-card img{width:100%;height:160px;object-fit:cover;border-radius:8px;margin: 0 0 10px 0;}
.info-card p{font-size:var(--text-sm);margin:0;max-width:none}

.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5)}
.product-card{display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-base) var(--ease-standard)}
.product-card:hover{box-shadow:var(--shadow-md)}
.product-media{aspect-ratio:4/3;background:var(--surface-sunken);display:flex;align-items:center;justify-content:center}
.product-media img{width:100%;height:100%;object-fit:contain;padding:16px}
.product-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);flex:1}
.product-body h4, .titleprodcd{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;line-height:var(--leading-snug)}
.product-meta{display:flex;gap:6px;font-size:var(--text-xs);color:var(--text-secondary)}
.product-meta .model{font-family:var(--font-mono)}
.product-actions{display:flex;gap:var(--space-3);margin-top:var(--space-3);align-items:center}
.product-actions .more{font-size:var(--text-sm);font-weight:600;color:var(--color-interactive)}
.product-actions .quote{margin-left:auto;font-size:var(--text-xs);font-weight:600;color:#fff;background:var(--color-interactive);padding:7px 12px;border-radius:var(--radius-sm)}
.product-actions .quote:hover{background:var(--color-interactive-hover);color:#fff;text-decoration:none}

.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5)}
.category-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background:var(--navy-900);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:box-shadow var(--duration-base) var(--ease-standard);text-decoration:none}
.category-card:hover{box-shadow:var(--shadow-md);text-decoration:none}
.category-card i{font-size:26px;color:#fff}
.category-card h3, .category-card strong{font-size:var(--text-md);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:#fff;margin:0}
.category-card span{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:600;color:var(--amber-400)}

/* FAQ */
.faq-list{display:flex;flex-direction:column;gap:var(--space-3)}
.faq-list details{border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}
.faq-list summary{cursor:pointer;font-weight:600;color:var(--text-primary);font-size:var(--text-md)}
.faq-list p{color:var(--text-secondary);font-size:var(--text-sm);margin:var(--space-3) 0 0}

/* ============ Contact ============ */
.contact{background:var(--surface-canvas);margin-top:var(--space-16)}
.contact .container{padding-top:var(--space-16);padding-bottom:var(--space-16)}
.contact h2{font-size:var(--text-2xl);margin-bottom:var(--space-3)}
.contact .lead{color:var(--text-secondary);font-size:var(--text-md);line-height:var(--leading-relaxed);max-width:640px;margin-bottom:var(--space-10)}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-12)}
.lead-form{display:flex;flex-direction:column;gap:var(--space-5)}
.field{display:flex;flex-direction:column;gap:var(--space-2)}
.field label{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}
.field .req{color:var(--red-500)}
.field-row{display:flex;gap:var(--space-4);flex-wrap:wrap}
.field-row>.field{flex:1;min-width:200px}
.input-wrap{position:relative;display:flex;align-items:center}
.input-wrap>i{position:absolute;left:12px;color:var(--text-tertiary);font-size:1rem;pointer-events:none}
.input-wrap .select-caret{left:auto;right:10px}
input,select,textarea{width:100%;font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);padding:12px;border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);background:var(--surface-card);outline:none;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}
.input-wrap.has-icon input{padding-left:36px}
select{appearance:none;padding-right:36px}
textarea{resize:vertical;line-height:var(--leading-normal)}
input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus-ring)}
.form-note{color:var(--text-tertiary);font-size:var(--text-xs)}
.form-success{display:none;gap:var(--space-3);align-items:flex-start;padding:var(--space-4);border-radius:var(--radius-md);background:var(--green-100);color:var(--green-700);font-size:var(--text-sm)}
.form-success[data-visible="true"]{display:flex}
.contact-aside{display:flex;flex-direction:column;gap:var(--space-5)}
.map-slot{background:var(--surface-sunken);border-radius:var(--radius-lg);aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:32px}
.contact-data{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}
.contact-data strong{color:var(--text-primary)}
.contact-data span{display:flex;align-items:center;gap:6px}

/* ============ Colophon ============ */
.colophon .container{padding-top:var(--space-10);padding-bottom:var(--space-10)}
.colophon p{color:var(--text-tertiary);font-size:var(--text-xs);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}
.colophon ul{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-sm);margin:0;padding:0;list-style:none}

/* ============ Footer ============ */
.site-footer{background:var(--surface-inverse);color:var(--text-inverse-secondary)}
.site-footer .container{padding-top:var(--space-16);padding-bottom:var(--space-8)}
.footer-top{display:flex;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap;padding-bottom:var(--space-10);border-bottom:1px solid oklch(100% 0 0 / .12)}
.footer-brand{max-width:320px}
.footer-brand p:first-child{color:#fff;font-size:var(--text-md);font-family:var(--font-display);letter-spacing:var(--tracking-wide);margin-bottom:var(--space-3)}
.footer-brand p:last-child{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.footer-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 32px;font-size:var(--text-sm);margin:0;padding:0;list-style:none}
.site-footer a{color:var(--text-inverse-secondary)}
.site-footer a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding-top:var(--space-6)}
.footer-bottom img{height:26px}
.footer-legal{display:flex;gap:var(--space-5);font-size:var(--text-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none}
.footer-copy{font-size:var(--text-xs)}

@media (max-width: 1101px) {
    .sect-lp h2 {
        scroll-margin-top: 120px;
    }
}
