/* Sonyuko combined stylesheet — generated 2026-07-13 */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/Inter-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/Inter-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/Inter-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/Inter-400.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/PlusJakartaSans-600.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/PlusJakartaSans-600.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('../fonts/PlusJakartaSans-600.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ===== reset.css ===== */
*,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{height:100%}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}table{border-collapse:collapse;width:100%}fieldset{border:none;padding:0}h1,h2,h3,h4,h5,h6{text-wrap:balance}p{text-wrap:pretty}:focus:not(:focus-visible){outline:none}::selection{background:var(--sonyuko-bright-blue,#2387d9);color:#fff}
/* ===== variables.css ===== */
:root{--sonyuko-navy:#0b1f33;--sonyuko-blue:#1769aa;--sonyuko-bright-blue:#2387d9;--sonyuko-teal:#0e8f8a;--sonyuko-pale-blue:#eaf5fc;--sonyuko-off-white:#f7fafc;--sonyuko-white:#ffffff;--sonyuko-charcoal:#1e293b;--sonyuko-slate:#526273;--sonyuko-border:#dde7ef;--sonyuko-success:#18875b;--sonyuko-error:#b42318;--color-bg:var(--sonyuko-off-white);--color-surface:var(--sonyuko-white);--color-surface-alt:var(--sonyuko-pale-blue);--color-text:var(--sonyuko-charcoal);--color-text-muted:var(--sonyuko-slate);--color-heading:var(--sonyuko-navy);--color-primary:var(--sonyuko-blue);--color-primary-strong:var(--sonyuko-navy);--color-accent:var(--sonyuko-teal);--color-border:var(--sonyuko-border);--color-success:var(--sonyuko-success);--color-error:var(--sonyuko-error);--color-link:var(--sonyuko-blue);--color-link-hover:var(--sonyuko-bright-blue);--font-heading:"Plus Jakarta Sans","Manrope",-apple-system,sans-serif;--font-body:"Inter","Source Sans 3",-apple-system,sans-serif;--fs-sm:clamp(0.875rem,0.84rem + 0.15vw,0.95rem);--fs-base:clamp(1rem,0.96rem + 0.2vw,1.125rem);--fs-md:clamp(1.125rem,1.06rem + 0.3vw,1.375rem);--fs-lg:clamp(1.375rem,1.24rem + 0.6vw,1.875rem);--fs-xl:clamp(1.75rem,1.5rem + 1.1vw,2.5rem);--fs-2xl:clamp(2.25rem,1.8rem + 2vw,3.375rem);--fs-3xl:clamp(2.75rem,2.1rem + 2.8vw,4.25rem);--lh-tight:1.15;--lh-heading:1.25;--lh-body:1.6;--space-3xs:0.25rem;--space-2xs:0.5rem;--space-xs:0.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.25rem;--space-xl:3.5rem;--space-2xl:5.5rem;--space-3xl:8rem;--container-max:1240px;--container-pad:clamp(1.25rem,4vw,2.5rem);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(11,31,51,0.06),0 1px 1px rgba(11,31,51,0.04);--shadow-md:0 8px 24px rgba(11,31,51,0.08);--shadow-lg:0 16px 40px rgba(11,31,51,0.12);--transition-fast:150ms ease;--transition-base:220ms ease;--header-height:84px}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important}}
/* ===== global.css ===== */
body{font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-body);color:var(--color-text);background:var(--color-bg)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-heading);line-height:var(--lh-heading);font-weight:700}h1{font-size:var(--fs-3xl);line-height:var(--lh-tight);font-weight:800}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-md)}p{color:var(--color-text);max-width:68ch}p.lead{font-size:var(--fs-md);color:var(--color-text-muted)}a{color:var(--color-link)}a:hover{color:var(--color-link-hover)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--sonyuko-bright-blue);outline-offset:2px;border-radius:4px}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}.section{padding-block:var(--space-2xl)}.section--tight{padding-block:var(--space-xl)}.section--alt{background:var(--color-surface-alt)}.section--navy{background:var(--sonyuko-navy);color:var(--sonyuko-white)}.section--navy h2,.section--navy h3{color:var(--sonyuko-white)}.section--navy p{color:rgba(255,255,255,0.82)}.eyebrow{display:inline-block;font-family:var(--font-heading);font-weight:700;font-size:var(--fs-sm);letter-spacing:0.06em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs)}.section-head{max-width:62ch;margin-bottom:var(--space-lg)}.section-head p{margin-top:var(--space-sm)}.skip-link{position:absolute;left:var(--space-sm);top:-100px;background:var(--sonyuko-navy);color:#fff;padding:0.75rem 1.25rem;border-radius:var(--radius-sm);z-index:1000;transition:top var(--transition-base)}.skip-link:focus{top:var(--space-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;font-family:var(--font-heading);font-weight:700;font-size:var(--fs-sm);padding:0.9rem 1.6rem;border-radius:var(--radius-sm);min-height:48px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);border:2px solid transparent;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--sonyuko-blue);color:#fff}.btn-primary:hover{background:var(--sonyuko-bright-blue);color:#fff}.btn-secondary{background:transparent;color:var(--sonyuko-navy);border-color:var(--sonyuko-navy)}.btn-secondary:hover{background:var(--sonyuko-navy);color:#fff}.btn-ghost-light{background:transparent;color:#fff;border-color:rgba(255,255,255,0.5)}.btn-ghost-light:hover{background:rgba(255,255,255,0.12);border-color:#fff;color:#fff}.btn-whatsapp{background:var(--sonyuko-teal);color:#fff}.btn-whatsapp:hover{background:#0b746f;color:#fff}.btn-block{width:100%}.btn[disabled]{opacity:0.6;cursor:not-allowed;transform:none}.link-arrow{display:inline-flex;align-items:center;gap:0.4rem;font-weight:700}.link-arrow::after{content:"→";transition:transform var(--transition-fast)}.link-arrow:hover::after{transform:translateX(3px)}.top-strip{background:var(--sonyuko-navy);color:rgba(255,255,255,0.9);font-size:var(--fs-sm)}.top-strip .container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:0.5rem;flex-wrap:wrap}.top-strip__contacts{display:flex;gap:var(--space-md);flex-wrap:wrap}.top-strip a{color:#fff}.top-strip a:hover{color:var(--sonyuko-pale-blue)}.top-strip__item{display:inline-flex;align-items:center;gap:0.4rem}.site-header{position:sticky;top:0;z-index:500;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);height:var(--header-height)}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{height:44px;width:auto;display:block}.footer-brand .brand img{height:76px}.main-nav{display:flex;align-items:center;gap:var(--space-lg)}.main-nav__list{display:flex;align-items:center;gap:var(--space-md)}.main-nav__list > li{position:relative}.main-nav__link{font-family:var(--font-heading);font-weight:600;font-size:var(--fs-sm);color:var(--color-text);padding:0.5rem 0.2rem;display:inline-flex;align-items:center;gap:0.3rem;border-bottom:2px solid transparent}.main-nav__link:hover,.main-nav__link[aria-current="page"]{color:var(--sonyuko-blue);border-color:var(--sonyuko-blue)}.has-dropdown > .main-nav__link::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:0.15rem}.dropdown{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:280px;padding:0.5rem;display:none;z-index:50}.has-dropdown.is-open .dropdown{display:block}.dropdown a{display:block;padding:0.65rem 0.85rem;border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--color-text)}.dropdown a:hover{background:var(--color-surface-alt);color:var(--sonyuko-blue)}.header-actions{display:flex;align-items:center;gap:var(--space-sm)}.call-shortcut{display:none}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{content:"";display:block;width:22px;height:2px;background:var(--sonyuko-navy);position:relative;transition:transform var(--transition-fast),opacity var(--transition-fast)}.nav-toggle span::before{position:absolute;top:-7px}.nav-toggle span::after{position:absolute;top:7px}.nav-toggle[aria-expanded="true"] span{background:transparent}.nav-toggle[aria-expanded="true"] span::before{transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span::after{transform:translateY(-7px) rotate(-45deg)}.precta{background:var(--sonyuko-teal);color:#fff;padding-block:var(--space-xl);text-align:center}.precta h2{color:#fff}.precta p{color:rgba(255,255,255,0.9);margin:var(--space-sm) auto;max-width:60ch}.precta__actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap;margin-top:var(--space-md)}.site-footer{background:var(--sonyuko-navy);color:rgba(255,255,255,0.85)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--space-lg);padding-block:var(--space-2xl) var(--space-lg)}.footer-grid h3{color:#fff;font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:var(--space-sm)}.footer-grid ul{display:flex;flex-direction:column;gap:0.6rem}.footer-grid a{color:rgba(255,255,255,0.78);font-size:var(--fs-sm)}.footer-grid a:hover{color:#fff}.footer-brand .brand{color:#fff}.footer-brand p{color:rgba(255,255,255,0.75);margin-top:var(--space-sm);font-size:var(--fs-sm)}.footer-meta{display:flex;align-items:center;flex-direction:column;gap:1rem;border-top:1px solid rgba(255,255,255,0.14);padding-block:var(--space-md);font-size:var(--fs-sm);color:rgba(255,255,255,0.65);text-align:center}.footer-meta__links{display:flex;gap:var(--space-md);flex-wrap:wrap;justify-content:center}.footer-meta__links a{color:rgba(255,255,255,0.75)}.whatsapp-float{position:fixed;right:max(1.25rem,env(safe-area-inset-right));bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:400;display:inline-flex;align-items:center;gap:0.6rem;background:var(--sonyuko-teal);color:#fff;border-radius:var(--radius-pill);padding:0.9rem 1.1rem;box-shadow:var(--shadow-lg);font-family:var(--font-heading);font-weight:700;font-size:var(--fs-sm)}.whatsapp-float:hover{background:#0b746f;color:#fff}.whatsapp-float svg{width:22px;height:22px;flex-shrink:0}.whatsapp-float__label{display:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}
/* ============ SONYUKO FIXES v2 — 2026-07-12 ============ */
/* 1. Dropdown: invisible hover bridge over the 10px gap */
.dropdown::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
/* 2. Size all SVG icons inside buttons (fixes giant WhatsApp icon) */
.btn svg{width:20px;height:20px;flex-shrink:0}
/* 3. Safety net: never allow sideways page scroll */
html,body{overflow-x:clip;max-width:100%}
/* 4. Mobile header cleanup */
@media (max-width:768px){
  .top-strip > .container > .top-strip__item{display:none}
  .top-strip__contacts{gap:1rem;justify-content:space-between;width:100%}
  .top-strip__contacts .top-strip__item:nth-child(3){display:none}
  .site-header .container{gap:0.75rem}
  .brand img{height:36px}
  .header-actions .btn{padding:0.7rem 1rem;font-size:0.85rem;min-height:42px}
  :root{--header-height:68px}
}

/* ===== components.css ===== */
.breadcrumbs{padding-block:var(--space-sm);font-size:var(--fs-sm);color:var(--color-text-muted)}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center}.breadcrumbs li:not(:last-child)::after{content:"/";margin-left:0.4rem;color:var(--color-border)}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--sonyuko-blue)}.breadcrumbs [aria-current="page"]{color:var(--color-text);font-weight:600}.hero{background:linear-gradient(180deg,var(--sonyuko-navy) 0%,#123556 100%);color:#fff;padding-block:var(--space-2xl)}.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-2xl);align-items:center}.hero h1{color:#fff}.hero p.lead{color:rgba(255,255,255,0.85)}.hero__actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-md)}.hero__call{margin-top:var(--space-md);font-size:var(--fs-sm);color:rgba(255,255,255,0.85)}.hero__call a{color:#fff;font-weight:700}.hero__trust{display:flex;flex-wrap:wrap;gap:0.6rem 1.4rem;margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,0.16)}.hero__trust li{display:flex;align-items:center;gap:0.5rem;font-size:var(--fs-sm);color:rgba(255,255,255,0.85)}.hero__trust li::before{content:"✓";color:var(--sonyuko-teal);font-weight:800}.hero__media{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:3/2}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero--page{padding-block:var(--space-xl)}.hero--page .hero-grid{grid-template-columns:1fr}.hero--page h1{max-width:40ch}.pathways{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.pathway-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.pathway-card--residential{border-top:4px solid var(--sonyuko-blue)}.pathway-card--commercial{border-top:4px solid var(--sonyuko-teal)}.pathway-card h3{margin-bottom:var(--space-xs)}.pathway-card p{margin-bottom:var(--space-md)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.service-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-base)}.service-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-card__media{aspect-ratio:16/10;overflow:hidden;background:var(--color-surface-alt)}.service-card__media img{width:100%;height:100%;object-fit:cover}.service-card__body{padding:var(--space-md);display:flex;flex-direction:column;gap:0.6rem;flex:1}.service-card__body p{font-size:var(--fs-sm);color:var(--color-text-muted)}.service-card__body .link-arrow{margin-top:auto;font-size:var(--fs-sm);color:var(--sonyuko-blue)}.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.pillar{padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border)}.pillar__icon{width:46px;height:46px;border-radius:var(--radius-sm);background:var(--color-surface-alt);color:var(--sonyuko-blue);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-sm)}.pillar h3{font-size:var(--fs-md);margin-bottom:0.35rem}.pillar p{font-size:var(--fs-sm);color:var(--color-text-muted)}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md)}.sector-card{padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);text-align:left}.sector-card h3{font-size:var(--fs-base);margin-bottom:0.3rem}.sector-card p{font-size:var(--fs-sm);color:var(--color-text-muted)}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);counter-reset:step}.process-list--8{grid-template-columns:repeat(4,1fr)}.process-step{position:relative;padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border)}.process-step::before{counter-increment:step;content:counter(step);display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--sonyuko-navy);color:#fff;font-weight:800;font-family:var(--font-heading);margin-bottom:var(--space-sm)}.process-step h3{font-size:var(--fs-base);margin-bottom:0.3rem}.process-step p{font-size:var(--fs-sm);color:var(--color-text-muted)}.area-chip-list{display:flex;flex-wrap:wrap;gap:0.6rem}.area-chip{padding:0.5rem 1rem;border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--fs-sm);font-weight:600}.accordion{border-top:1px solid var(--color-border)}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) 0.25rem;text-align:left;font-family:var(--font-heading);font-weight:700;font-size:var(--fs-base);color:var(--color-heading)}.accordion-trigger__icon{flex-shrink:0;width:22px;height:22px;position:relative}.accordion-trigger__icon::before,.accordion-trigger__icon::after{content:"";position:absolute;top:50%;left:50%;background:var(--sonyuko-blue);transform:translate(-50%,-50%)}.accordion-trigger__icon::before{width:14px;height:2px}.accordion-trigger__icon::after{width:2px;height:14px;transition:transform var(--transition-fast)}.accordion-trigger[aria-expanded="true"] .accordion-trigger__icon::after{transform:translate(-50%,-50%) scaleY(0)}.accordion-panel{overflow:hidden;max-height:0;transition:max-height var(--transition-base)}.accordion-panel[data-open="true"]{max-height:800px}.accordion-panel__inner{padding-bottom:var(--space-md);color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;gap:0.4rem;font-size:var(--fs-sm);font-weight:700;padding:0.35rem 0.8rem;border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--sonyuko-blue)}.cta-banner{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.cta-banner h3{margin-bottom:0.3rem}.cta-banner__actions{display:flex;gap:var(--space-sm);flex-wrap:wrap}.info-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);align-items:start}.info-split img,.info-split .media-frame{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);aspect-ratio:4/3;overflow:hidden}.check-list li{position:relative;padding-left:1.6rem;margin-bottom:0.6rem}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--sonyuko-teal);font-weight:800}.gallery-filters{display:flex;flex-wrap:wrap;gap:0.6rem;margin-bottom:var(--space-lg)}.gallery-filter{padding:0.55rem 1.1rem;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);font-weight:600;font-size:var(--fs-sm)}.gallery-filter[aria-pressed="true"]{background:var(--sonyuko-navy);color:#fff;border-color:var(--sonyuko-navy)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.gallery-item{border-radius:var(--radius-md);overflow:hidden;position:relative;aspect-ratio:4/3;background:var(--color-surface-alt);border:1px solid var(--color-border)}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-item__tag{position:absolute;left:0.6rem;bottom:0.6rem;background:rgba(11,31,51,0.85);color:#fff;font-size:0.75rem;padding:0.3rem 0.6rem;border-radius:var(--radius-pill)}.gallery-item.is-hidden{display:none}.gallery-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0.4rem;text-align:center;color:var(--color-text-muted);font-size:var(--fs-sm);height:100%;padding:var(--space-sm)}.before-after{position:relative;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);touch-action:pan-y}.before-after__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.before-after__after-wrap{position:absolute;inset:0;width:50%;overflow:hidden}.before-after__after-wrap img{width:200%;max-width:none;height:100%}.before-after__handle{position:absolute;top:0;bottom:0;left:50%;width:4px;background:#fff;transform:translateX(-50%);cursor:ew-resize;display:flex;align-items:center;justify-content:center}.before-after__handle::after{content:"⇔";width:40px;height:40px;border-radius:50%;background:#fff;color:var(--sonyuko-navy);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);font-size:1.1rem}.before-after__label{position:absolute;top:0.6rem;font-size:0.75rem;font-weight:700;background:rgba(11,31,51,0.85);color:#fff;padding:0.25rem 0.6rem;border-radius:var(--radius-pill)}.before-after__label--before{left:0.6rem}.before-after__label--after{right:0.6rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.form-field{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:var(--space-md)}.form-field--full{grid-column:1 / -1}.form-field label{font-weight:700;font-size:var(--fs-sm);color:var(--color-heading)}.form-field .req{color:var(--color-error)}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0.8rem 0.9rem;font-size:var(--fs-base);background:#fff;min-height:48px}.form-field textarea{min-height:120px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--sonyuko-blue)}.form-field.has-error input,.form-field.has-error select,.form-field.has-error textarea{border-color:var(--color-error)}.form-error{font-size:var(--fs-sm);color:var(--color-error)}.form-hint{font-size:var(--fs-sm);color:var(--color-text-muted)}.checkbox-field{display:flex;align-items:flex-start;gap:0.6rem}.checkbox-field input{width:20px;height:20px;min-height:20px;margin-top:0.15rem;flex-shrink:0}.checkbox-field label{font-weight:400;font-size:var(--fs-sm)}.form-status{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--fs-sm);margin-bottom:var(--space-md);display:none}.form-status.is-visible{display:block}.form-status--error{background:#fdecea;color:var(--color-error);border:1px solid #f3c6bf}.form-status--success{background:#e8f5ee;color:var(--color-success);border:1px solid #bfe6d2}.honeypot-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.stepper{display:flex;justify-content:space-between;margin-bottom:var(--space-lg);gap:0.5rem}.stepper__step{flex:1;text-align:center;font-size:var(--fs-sm);color:var(--color-text-muted);position:relative}.stepper__step-num{width:32px;height:32px;border-radius:50%;background:var(--color-surface-alt);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;margin:0 auto 0.4rem;font-weight:700;font-family:var(--font-heading)}.stepper__step.is-active .stepper__step-num,.stepper__step.is-complete .stepper__step-num{background:var(--sonyuko-blue);color:#fff}.stepper__step.is-active{color:var(--color-heading);font-weight:700}.quote-step{display:none}.quote-step.is-active{display:block}.quote-actions{display:flex;justify-content:space-between;margin-top:var(--space-lg);gap:var(--space-sm)}.review-summary dt{font-weight:700;color:var(--color-heading);font-size:var(--fs-sm);margin-top:var(--space-sm)}.review-summary dd{color:var(--color-text-muted);margin-bottom:0.2rem}.upload-field{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-align:center}.contact-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.contact-info-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md)}.contact-info-card h3{font-size:var(--fs-base);margin-bottom:0.3rem}.map-frame{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);aspect-ratio:16/9}.legal-content h2{margin-top:var(--space-lg);font-size:var(--fs-lg)}.legal-content h3{margin-top:var(--space-md);font-size:var(--fs-md)}.legal-content p,.legal-content li{color:var(--color-text-muted);margin-top:var(--space-sm);max-width:76ch}.legal-content ul{list-style:disc;padding-left:1.4rem}.legal-content ul li{margin-top:0.4rem}.error-page{text-align:center;padding-block:var(--space-3xl)}.error-page .error-code{font-family:var(--font-heading);font-size:var(--fs-3xl);color:var(--sonyuko-blue);font-weight:800}.related-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.related-card{padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.related-card h3{font-size:var(--fs-base);margin-bottom:0.4rem}
/* ===== pages.css ===== */
.home-hero .hero__media{background:var(--color-surface-alt)}.sitemap-links ul{columns:2;gap:var(--space-lg)}.service-hero-list{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:var(--space-md)}.service-hero-list li{background:rgba(255,255,255,0.12);padding:0.4rem 0.9rem;border-radius:var(--radius-pill);font-size:var(--fs-sm)}.quote-note{background:var(--color-surface-alt);border-left:3px solid var(--sonyuko-teal);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--color-text-muted)}.sector-detail{border-top:1px solid var(--color-border);padding-block:var(--space-lg)}.sector-detail__grid{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-lg)}.sector-detail h3{font-size:var(--fs-lg)}
/* ===== responsive.css ===== */
@media (max-width:1024px){.card-grid{grid-template-columns:repeat(2,1fr)}.pillar-grid{grid-template-columns:repeat(2,1fr)}.sector-grid{grid-template-columns:repeat(2,1fr)}.process-list{grid-template-columns:repeat(2,1fr)}.related-list{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.info-split{grid-template-columns:1fr}.sector-detail__grid{grid-template-columns:1fr}}@media (min-width:1151px){.call-shortcut{display:none}}@media (max-width:1150px){.main-nav{display:none}.header-actions .btn-secondary{display:none}.nav-toggle{display:flex}.call-shortcut{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--color-surface-alt);color:var(--sonyuko-blue)}.main-nav{display:none}.main-nav.is-open{display:flex;position:fixed;inset:var(--header-height) 0 0 0;background:#fff;flex-direction:column;align-items:stretch;padding:var(--space-md) var(--container-pad);overflow-y:auto;z-index:490}.main-nav.is-open .main-nav__list{flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open .main-nav__list > li{border-bottom:1px solid var(--color-border)}.main-nav.is-open .main-nav__link{padding:0.9rem 0.2rem;width:100%;justify-content:space-between;min-height:44px}.main-nav.is-open .dropdown{position:static;transform:none;box-shadow:none;border:none;display:none;padding-left:1rem}.main-nav.is-open .has-dropdown.is-open .dropdown{display:block}.main-nav.is-open .header-actions-mobile{margin-top:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}body.nav-locked{overflow:hidden}.hero-grid{grid-template-columns:1fr}.hero__media{order:-1}.pathways{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.pillar-grid{grid-template-columns:1fr}.sector-grid{grid-template-columns:1fr}.process-list{grid-template-columns:1fr}.related-list{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:var(--space-md)}.form-grid{grid-template-columns:1fr}.contact-info-grid{grid-template-columns:1fr}.cta-banner{flex-direction:column;align-items:stretch;text-align:center}.stepper__step span:last-child{display:none}.whatsapp-float__label{display:none}.sitemap-links ul{columns:1}}@media (max-width:560px){.top-strip__contacts .top-strip__item:nth-child(3){display:none}.precta__actions{flex-direction:column;align-items:stretch}.precta__actions .btn{width:100%}}