@layer tokens, reset, base, layout, components, utilities, enhancements;

@layer tokens {
  :root {
    color-scheme: dark;
    --brand-50: #fff1f3;
    --brand-100: #ffe0e5;
    --brand-300: #ff8295;
    --brand-400: #ff4766;
    --brand-500: #e40832;
    --brand-600: #c9002a;
    --brand-700: #a90024;
    --ink-1000: #030407;
    --ink-950: #07080c;
    --ink-900: #0b0d12;
    --ink-850: #10131a;
    --ink-800: #151922;
    --ink-750: #1b202b;
    --ink-700: #242a36;
    --text-strong: #fff;
    --text: #e6e8ee;
    --text-soft: #c6cad4;
    --text-muted: #949aa8;
    --line: rgba(255,255,255,.11);
    --line-strong: rgba(255,255,255,.2);
    --success: #56d69a;
    --warning: #f4c95d;
    --danger: #ff667a;
    --info: #79aaff;
    --surface-0: var(--ink-1000);
    --surface-1: var(--ink-950);
    --surface-2: var(--ink-900);
    --surface-3: var(--ink-850);
    --surface-4: var(--ink-800);
    --surface-glass: rgba(12,14,20,.78);
    --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-display: "Arial Narrow", "Helvetica Neue", var(--font-sans);
    --step--1: clamp(.78rem, .74rem + .15vw, .88rem);
    --step-0: clamp(.96rem, .91rem + .2vw, 1.08rem);
    --step-1: clamp(1.16rem, 1.04rem + .45vw, 1.42rem);
    --step-2: clamp(1.48rem, 1.23rem + .85vw, 2rem);
    --step-3: clamp(2rem, 1.55rem + 1.5vw, 3rem);
    --step-4: clamp(2.7rem, 1.9rem + 2.75vw, 4.75rem);
    --step-5: clamp(3.25rem, 2rem + 4.3vw, 6.4rem);
    --space-1: .25rem;
    --space-2: .5rem;
    --space-3: .75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4.5rem;
    --space-9: 6.5rem;
    --radius-xs: .45rem;
    --radius-sm: .7rem;
    --radius-md: 1rem;
    --radius-lg: 1.45rem;
    --radius-xl: 2rem;
    --radius-pill: 999px;
    --shadow-sm: 0 12px 34px rgba(0,0,0,.24);
    --shadow-md: 0 24px 80px rgba(0,0,0,.38);
    --shadow-brand: 0 18px 50px rgba(228,8,50,.28);
    --content-max: 1240px;
    --content-narrow: 760px;
    --header-height: 82px;
    --ease: cubic-bezier(.2,.75,.2,1);
    --transition-fast: 160ms ease;
    --transition: 280ms var(--ease);
    --focus-ring: 0 0 0 3px #fff, 0 0 0 6px rgba(228,8,50,.9);
  }
}

@layer reset {
  *,*::before,*::after { box-sizing: border-box; }
  html { min-width: 320px; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-height) + 1rem); }
  body { margin: 0; min-height: 100vh; overflow-x: hidden; }
  img,picture,svg,video,canvas { display: block; max-width: 100%; }
  img { height: auto; }
  button,input,select,textarea { font: inherit; }
  button,[role="button"] { cursor: pointer; }
  ul,ol { margin: 0; }
  h1,h2,h3,h4,p,blockquote,figure { margin-top: 0; }
  [hidden] { display: none; }
}

@layer base {
  body {
    background:
      radial-gradient(circle at 15% 0%, rgba(228,8,50,.09), transparent 30rem),
      linear-gradient(180deg, var(--surface-0), var(--surface-1) 38%, var(--surface-0));
    color: var(--text-soft);
    font-family: var(--font-sans);
    font-size: var(--step-0);
    line-height: 1.7;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
  }
  body.menu-open,body.dialog-open { overflow: hidden; }
  main { min-height: 55vh; }
  section { position: relative; padding-block: var(--space-9); scroll-margin-top: calc(var(--header-height) + 1rem); }
  h1,h2,h3,h4 {
    margin-bottom: var(--space-4);
    color: var(--text-strong);
    font-family: var(--font-display);
    font-weight: 760;
    line-height: 1.08;
    letter-spacing: -.035em;
    text-wrap: balance;
  }
  h1 { font-size: var(--step-5); }
  h2 { font-size: var(--step-3); }
  h3 { font-size: var(--step-1); }
  p { margin-bottom: var(--space-4); }
  a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .22em; }
  a:hover { color: var(--text-strong); }
  :where(a,button,input,select,textarea,[tabindex]):focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: max(.2rem,var(--radius-sm)); }
  ::selection { background: var(--brand-500); color: #fff; }
  .bay-public-svg { flex: 0 0 auto; }
}

@layer layout {
  .container { width: min(calc(100% - 2rem),var(--content-max)); margin-inline: auto; }
  .narrow { width: min(100%,var(--content-narrow)); margin-inline: auto; }
  .split-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(2rem,5vw,5rem); align-items: center; }
  .button-group,.cta-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .8rem; }
  .section-heading { max-width: 720px; margin-bottom: clamp(2rem,4vw,3.5rem); }
  .section-heading > p { max-width: 62ch; color: var(--text-muted); }
  .section-heading--center { margin-inline: auto; text-align: center; }
  .section-heading--center > p { margin-inline: auto; }
  .section-heading--split { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 2rem; }
  .section-heading--split > div { max-width: 760px; }
  .content-section { background: linear-gradient(180deg,rgba(255,255,255,.018),transparent); }
  .content-section + .content-section { padding-top: 0; }
}

@layer components {
  .skip-link { position: fixed; z-index: 10000; inset: 1rem auto auto 1rem; transform: translateY(-180%); padding: .75rem 1rem; border-radius: var(--radius-sm); background: #fff; color: #111; font-weight: 800; transition: transform var(--transition-fast); }
  .skip-link:focus { transform: translateY(0); }
  .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

  .eyebrow { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: .9rem; color: var(--brand-300); font-size: var(--step--1); font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
  .eyebrow::before { content: ""; width: 1.7rem; height: 2px; border-radius: 2px; background: currentColor; }
  .eyebrow--light { color: #fff; }
  .eyebrow--light::before { background: var(--brand-400); }

  .btn { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: .65rem; padding: .78rem 1.25rem; border: 1px solid transparent; border-radius: var(--radius-pill); font-weight: 780; line-height: 1; text-align: center; text-decoration: none; transition: transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast); }
  .btn:hover { transform: translateY(-2px); }
  .btn:active { transform: translateY(0); }
  .btn-primary,.btn-accent,.btn:not([class*="btn-"]) { background: linear-gradient(135deg,var(--brand-400),var(--brand-600)); color: #fff; box-shadow: var(--shadow-brand); }
  .btn-primary:hover,.btn-accent:hover,.btn:not([class*="btn-"]):hover { background: linear-gradient(135deg,#ff3659,var(--brand-500)); color: #fff; }
  .btn-secondary,.btn-dark { border-color: var(--line-strong); background: rgba(255,255,255,.055); color: #fff; box-shadow: inset 0 1px rgba(255,255,255,.08); }
  .btn-secondary:hover,.btn-dark:hover { border-color: rgba(255,255,255,.36); background: rgba(255,255,255,.1); }
  .btn-ghost { border-color: rgba(255,255,255,.34); background: rgba(4,5,8,.28); color: #fff; backdrop-filter: blur(12px); }
  .btn-ghost:hover { background: rgba(255,255,255,.12); }
  .btn-block { width: 100%; }
  .text-link { display: inline-flex; align-items: center; gap: .5rem; color: var(--brand-300); font-weight: 760; text-decoration: none; }
  .text-link:hover { color: #fff; }
  .text-link--arrow svg { transition: transform var(--transition-fast); }
  .text-link--arrow:hover svg { transform: translateX(.25rem); }

  .top-bar { position: relative; z-index: 1100; border-bottom: 1px solid var(--line); background: #030407; font-size: .82rem; }
  .top-bar__inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
  .top-bar-info,.top-bar-social { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem 1rem; }
  .top-bar a,.trust-chip { display: inline-flex; align-items: center; gap: .45rem; color: var(--text-muted); text-decoration: none; }
  .top-bar a:hover { color: #fff; }
  .trust-chip { color: var(--text-soft); font-weight: 700; }
  .trust-chip svg { color: var(--brand-400); }
  .top-bar-social a { width: 30px; height: 30px; justify-content: center; border-radius: 50%; }

  .header { position: sticky; top: 0; z-index: 1000; min-height: var(--header-height); border-bottom: 1px solid var(--line); background: rgba(7,8,12,.86); backdrop-filter: blur(20px) saturate(140%); transition: background var(--transition-fast),box-shadow var(--transition-fast); }
  .header.is-scrolled { background: rgba(5,6,9,.96); box-shadow: 0 12px 40px rgba(0,0,0,.3); }
  .navbar { min-height: var(--header-height); display: flex; align-items: center; justify-content: space-between; gap: 1.2rem; }
  .logo { display: inline-flex; align-items: center; flex: 0 0 auto; }
  .logo-image { width: min(250px,24vw); height: clamp(42px,5vw,58px); object-fit: contain; object-position: left center; }
  .nav-panel { display: flex; align-items: center; margin-left: auto; }
  .nav-links { display: flex; align-items: center; gap: .15rem; padding: 0; list-style: none; }
  .nav-link { position: relative; display: inline-flex; min-height: 44px; align-items: center; padding: .5rem .78rem; border-radius: var(--radius-pill); color: var(--text-soft); font-size: .89rem; font-weight: 700; text-decoration: none; white-space: nowrap; transition: background var(--transition-fast),color var(--transition-fast); }
  .nav-link::after { content: ""; position: absolute; inset: auto 1rem .42rem; height: 2px; border-radius: 2px; background: var(--brand-400); transform: scaleX(0); transform-origin: left; transition: transform var(--transition-fast); }
  .nav-link:hover,.nav-link.active { background: rgba(255,255,255,.055); color: #fff; }
  .nav-link:hover::after,.nav-link.active::after { transform: scaleX(1); }
  .nav-actions { display: flex; align-items: center; gap: .65rem; }
  .nav-cta { min-height: 44px; padding: .65rem 1rem; font-size: .88rem; }

  .menu-backdrop { position: fixed; inset: 0; z-index: 880; border: 0; background: rgba(0,0,0,.68); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity var(--transition),visibility var(--transition); }
  .menu-backdrop.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
  .menu-toggle { display: none; width: 46px; height: 46px; padding: 0; border: 1px solid var(--line-strong); border-radius: 50%; background: rgba(255,255,255,.04); align-items: center; justify-content: center; flex-direction: column; gap: 5px; }
  .menu-toggle .bar { width: 20px; height: 2px; border-radius: 2px; background: #fff; transition: transform var(--transition),opacity var(--transition); }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] .bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .nav-panel__footer { display: none; }

  #preloader { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; background: var(--surface-0); transition: opacity .35s ease,visibility .35s ease; }
  #preloader.is-hidden { opacity: 0; visibility: hidden; }
  .preloader-logo { width: min(300px,70vw); animation: preloaderPulse 1.1s ease-in-out infinite alternate; }

  .home-hero { min-height: min(820px,calc(100svh - 38px)); display: grid; align-items: center; overflow: clip; padding-block: clamp(6rem,12vh,10rem); isolation: isolate; }
  .home-hero__media,.home-hero__veil { position: absolute; inset: 0; z-index: -2; }
  .home-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center 28%; filter: saturate(.78) contrast(1.06); }
  .home-hero__veil { z-index: -1; background: linear-gradient(90deg,rgba(3,4,7,.98) 0%,rgba(3,4,7,.9) 44%,rgba(3,4,7,.52) 70%,rgba(3,4,7,.82) 100%),linear-gradient(180deg,rgba(3,4,7,.18),var(--surface-0)); }
  .home-hero::after { content: ""; position: absolute; inset: auto 0 0; height: 12rem; z-index: -1; background: linear-gradient(transparent,var(--surface-0)); }
  .home-hero__inner { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(290px,.55fr); gap: clamp(2rem,7vw,7rem); align-items: end; }
  .home-hero__content { max-width: 820px; }
  .home-hero h1 { max-width: 12ch; margin-bottom: 1.25rem; font-size: clamp(3.35rem,7vw,7.1rem); line-height: .94; text-transform: uppercase; }
  .home-hero__content > p { max-width: 62ch; margin-bottom: 2rem; color: #d2d5dc; font-size: clamp(1.05rem,1rem + .35vw,1.3rem); }
  .home-hero__assurance { display: flex; flex-wrap: wrap; gap: .65rem 1.3rem; margin-top: 1.7rem; color: var(--text-soft); font-size: .86rem; }
  .home-hero__assurance span { display: inline-flex; align-items: center; gap: .45rem; }
  .home-hero__assurance svg { color: var(--brand-400); }
  .home-hero__panel { position: relative; padding: clamp(1.5rem,3vw,2.25rem); border: 1px solid rgba(255,255,255,.18); border-radius: var(--radius-xl); background: linear-gradient(145deg,rgba(18,21,29,.82),rgba(7,8,12,.64)); box-shadow: var(--shadow-md); backdrop-filter: blur(18px); }
  .home-hero__panel::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; border-radius: var(--radius-xl) 0 0 var(--radius-xl); background: linear-gradient(var(--brand-300),var(--brand-700)); }
  .home-hero__panel-label { display: block; margin-bottom: .7rem; color: var(--brand-300); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
  .home-hero__panel > strong { display: block; margin-bottom: .8rem; color: #fff; font-size: var(--step-1); }
  .home-hero__panel > p { color: var(--text-muted); font-size: .93rem; }
  .home-hero__phone { display: flex; align-items: center; gap: .8rem; margin-top: 1.5rem; padding-top: 1.2rem; border-top: 1px solid var(--line); color: #fff; text-decoration: none; }
  .home-hero__phone svg { color: var(--brand-300); }
  .home-hero__phone span { display: grid; }
  .home-hero__phone small { color: var(--text-muted); font-size: .72rem; }
  .hero-scroll { position: absolute; left: 50%; bottom: 2rem; display: flex; align-items: center; gap: .5rem; transform: translateX(-50%); color: var(--text-muted); font-size: .76rem; font-weight: 750; letter-spacing: .11em; text-decoration: none; text-transform: uppercase; }

  .home-proof { padding-top: var(--space-8); }
  .home-proof > .container { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(2rem,6vw,6rem); align-items: end; }
  .home-proof__intro p { max-width: 55ch; color: var(--text-muted); }
  .stat-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .9rem; }
  .stat-card { min-height: 170px; display: grid; align-content: end; gap: .35rem; padding: 1.4rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); box-shadow: inset 0 1px rgba(255,255,255,.07); transition: transform var(--transition),border-color var(--transition),background var(--transition); }
  .stat-card:hover { transform: translateY(-5px); border-color: rgba(255,71,102,.45); background: linear-gradient(145deg,rgba(228,8,50,.12),rgba(255,255,255,.025)); }
  .stat-card__icon { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: auto; border-radius: 12px; background: rgba(228,8,50,.13); color: var(--brand-300); }
  .stat-card strong { color: #fff; font-size: clamp(1.9rem,3vw,3rem); line-height: 1; }
  .stat-card > span:last-child { color: var(--text-muted); font-size: .88rem; }

  .home-catalog { overflow: clip; }
  .home-catalog:nth-of-type(even) { background: linear-gradient(180deg,transparent,rgba(255,255,255,.018),transparent); }
  .service-grid,.listing-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
  .service-card,.listing-card { position: relative; min-width: 0; border: 1px solid var(--line); border-radius: var(--radius-lg); background: linear-gradient(145deg,var(--surface-3),var(--surface-2)); overflow: hidden; transition: transform var(--transition),border-color var(--transition),box-shadow var(--transition); }
  .service-card:hover,.listing-card:hover { transform: translateY(-6px); border-color: rgba(255,71,102,.4); box-shadow: var(--shadow-md); }
  .service-card__link { min-height: 320px; display: flex; flex-direction: column; padding: 1.6rem; color: inherit; text-decoration: none; }
  .service-card__number { position: absolute; top: 1.2rem; right: 1.3rem; color: rgba(255,255,255,.16); font-size: 2rem; font-weight: 850; }
  .service-card__icon,.listing-card > svg { width: 54px; height: 54px; display: grid; place-items: center; margin-bottom: 2.5rem; border: 1px solid rgba(255,71,102,.2); border-radius: 16px; background: rgba(228,8,50,.1); color: var(--brand-300); padding: 12px; }
  .service-card h3,.listing-card h2 { font-size: clamp(1.35rem,2vw,1.75rem); }
  .service-card p,.listing-card p { color: var(--text-muted); font-size: .93rem; }
  .service-card__action { display: inline-flex; align-items: center; gap: .5rem; margin-top: auto; color: var(--brand-300); font-size: .88rem; font-weight: 760; }
  .listing-card { display: flex; flex-direction: column; min-height: 310px; padding: 1.6rem; }
  .listing-card .text-link { margin-top: auto; }

  .founder-section { background: linear-gradient(125deg,rgba(228,8,50,.08),transparent 38%),var(--surface-2); }
  .founder-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.1fr); gap: clamp(2.5rem,7vw,7rem); align-items: center; }
  .founder-image-wrapper { position: relative; }
  .founder-image { width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: center top; border-radius: var(--radius-xl); box-shadow: var(--shadow-md); filter: saturate(.82); }
  .founder-image-wrapper::after { content: ""; position: absolute; inset: 1rem -1rem -1rem 1rem; z-index: -1; border: 1px solid rgba(255,71,102,.35); border-radius: var(--radius-xl); }
  .founder-image-badge { position: absolute; right: -1rem; bottom: 2rem; display: grid; padding: 1rem 1.25rem; border: 1px solid var(--line-strong); border-radius: var(--radius-md); background: rgba(4,5,8,.86); backdrop-filter: blur(14px); }
  .founder-image-badge strong { color: #fff; font-size: 1.1rem; }
  .founder-image-badge span { color: var(--text-muted); font-size: .78rem; }
  .founder-bio h2 { max-width: 15ch; }
  .founder-bio blockquote { position: relative; margin: 1.6rem 0; padding-left: 1.35rem; border-left: 3px solid var(--brand-500); color: var(--text-soft); font-size: clamp(1.05rem,1rem + .3vw,1.25rem); }
  .founder-signature { display: grid; margin-bottom: 1.5rem; }
  .founder-signature strong { color: #fff; }
  .founder-signature span { color: var(--text-muted); font-size: .86rem; }

  .process-section { overflow: clip; }
  .process-grid { position: relative; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; padding: 0; list-style: none; counter-reset: process; }
  .process-grid::before { content: ""; position: absolute; top: 2rem; left: 8%; right: 8%; height: 1px; background: linear-gradient(90deg,transparent,var(--brand-500),transparent); }
  .process-grid li { position: relative; padding: 1.5rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: rgba(255,255,255,.025); }
  .process-grid li > span { position: relative; z-index: 1; width: 4rem; height: 4rem; display: grid; place-items: center; margin-bottom: 2rem; border: 1px solid rgba(255,71,102,.35); border-radius: 50%; background: var(--surface-1); color: var(--brand-300); font-weight: 850; }
  .process-grid p { color: var(--text-muted); font-size: .9rem; }

  .gallery-section { background: var(--surface-2); }
  .gallery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
  .gallery-grid--editorial { grid-auto-rows: 230px; }
  .gallery-trigger,.gallery-card { position: relative; min-width: 0; padding: 0; border: 0; border-radius: var(--radius-lg); background: var(--surface-3); overflow: hidden; }
  .gallery-trigger--feature { grid-column: span 2; grid-row: span 2; }
  .gallery-trigger img,.gallery-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s var(--ease),filter .65s var(--ease); }
  .gallery-trigger:hover img,.gallery-card:hover img { transform: scale(1.045); filter: brightness(.72); }
  .gallery-trigger__overlay { position: absolute; inset: auto 1rem 1rem auto; width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(4,5,8,.68); color: #fff; opacity: 0; transform: translateY(8px); transition: opacity var(--transition),transform var(--transition); backdrop-filter: blur(10px); }
  .gallery-trigger:hover .gallery-trigger__overlay,.gallery-trigger:focus-visible .gallery-trigger__overlay { opacity: 1; transform: translateY(0); }
  .gallery-card figcaption { position: absolute; inset: auto 0 0; padding: 2rem 1rem 1rem; background: linear-gradient(transparent,rgba(0,0,0,.82)); color: #fff; }

  .testimonial-section { background: linear-gradient(135deg,var(--surface-1),rgba(228,8,50,.055),var(--surface-1)); }
  .testimonial-layout { display: grid; grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); gap: clamp(2rem,7vw,7rem); align-items: center; }
  .testimonial-intro p { color: var(--text-muted); }
  .testimonial-slider { min-width: 0; }
  .slides-container { position: relative; min-height: 310px; }
  .testimonial-slide { display: none; min-height: 310px; flex-direction: column; justify-content: center; padding: clamp(1.7rem,4vw,3rem); border: 1px solid var(--line); border-radius: var(--radius-xl); background: linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.018)); box-shadow: var(--shadow-md); }
  .testimonial-slide.is-active { display: flex; }
  html:not(.js) .testimonial-slide:first-child { display: flex; }
  .testimonial-slide[aria-hidden="true"] { display: none; }
  .quote-mark { color: var(--brand-400); font-family: Georgia,serif; font-size: 5rem; line-height: .6; }
  .testimonial-slide > p { color: #fff; font-size: clamp(1.12rem,1rem + .55vw,1.5rem); line-height: 1.55; }
  .testimonial-slide footer { display: grid; margin-top: 1.3rem; }
  .testimonial-slide footer strong { color: #fff; }
  .testimonial-slide footer span { color: var(--text-muted); font-size: .86rem; }
  .slider-controls { display: flex; align-items: center; justify-content: flex-end; gap: .55rem; margin-top: 1rem; }
  .slider-controls > button { width: 44px; height: 44px; display: grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: var(--surface-3); color: #fff; }
  #slider-dots { display: flex; gap: .4rem; margin-inline: .4rem; }
  .slider-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.25); }
  .slider-dot[aria-current="true"] { width: 24px; border-radius: 8px; background: var(--brand-400); }

  .faq-layout { display: grid; grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr); gap: clamp(2rem,7vw,7rem); align-items: start; }
  .faq-intro { position: sticky; top: calc(var(--header-height) + 2rem); }
  .faq-intro p { color: var(--text-muted); }
  .faq-container { display: grid; gap: .7rem; }
  .faq-item { border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(255,255,255,.025); overflow: clip; }
  .faq-question { width: 100%; min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.25rem; border: 0; background: transparent; color: #fff; font-weight: 730; text-align: left; }
  .faq-question svg { color: var(--brand-300); transition: transform var(--transition); }
  .faq-question[aria-expanded="true"] svg { transform: rotate(45deg); }
  .faq-answer { padding: 0 1.25rem 1.25rem; }
  .faq-answer p { margin: 0; color: var(--text-muted); }

  .cta-section { padding-block: var(--space-8); }
  .cta-shell { position: relative; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem; align-items: center; padding: clamp(2rem,5vw,4rem); border: 1px solid rgba(255,71,102,.28); border-radius: var(--radius-xl); background: radial-gradient(circle at 90% 10%,rgba(255,71,102,.22),transparent 22rem),linear-gradient(145deg,var(--surface-4),var(--surface-2)); box-shadow: var(--shadow-md); overflow: hidden; }
  .cta-shell::after { content: "BAY"; position: absolute; right: 2rem; bottom: -2.4rem; color: rgba(255,255,255,.025); font-size: 10rem; font-weight: 900; line-height: 1; }
  .cta-shell > div { position: relative; z-index: 1; }
  .cta-shell h2 { max-width: 19ch; }
  .cta-shell p { max-width: 60ch; color: var(--text-muted); }

  .contact-section { background: var(--surface-2); }
  .contact-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(2rem,7vw,7rem); align-items: start; }
  .contact-info > p { max-width: 52ch; color: var(--text-muted); }
  .contact-list { display: grid; gap: .8rem; padding: 0; list-style: none; }
  .contact-list li { display: flex; gap: 1rem; align-items: flex-start; padding: 1rem 0; border-bottom: 1px solid var(--line); }
  .contact-list li > svg { margin-top: .2rem; color: var(--brand-300); }
  .contact-list li div { display: grid; }
  .contact-list li span { color: var(--text-muted); font-size: .76rem; letter-spacing: .08em; text-transform: uppercase; }
  .contact-list li strong,.contact-list li a { color: #fff; font-weight: 700; text-decoration: none; }
  .contact-shortcuts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; margin-top: 1.5rem; }
  .contact-shortcuts a { display: flex; align-items: center; gap: .8rem; padding: 1rem; border: 1px solid var(--line); border-radius: var(--radius-md); background: rgba(255,255,255,.025); text-decoration: none; }
  .contact-shortcuts svg { color: var(--brand-300); }
  .contact-shortcuts span { display: grid; }
  .contact-shortcuts strong { color: #fff; font-size: .88rem; }
  .contact-shortcuts small { color: var(--text-muted); font-size: .72rem; }

  .premium-form,.contact-form,.form-container { padding: clamp(1.4rem,3vw,2.25rem); border: 1px solid var(--line); border-radius: var(--radius-xl); background: linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); box-shadow: var(--shadow-sm); }
  .form-heading span { color: var(--brand-300); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
  .form-heading h3 { margin-top: .35rem; }
  .form-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .9rem; }
  .form-group { display: grid; gap: .45rem; margin-bottom: 1rem; }
  .form-group label,.form-label { color: var(--text-soft); font-size: .84rem; font-weight: 700; }
  .form-group input,.form-group select,.form-group textarea,.form-control,.form-select { width: 100%; min-height: 50px; padding: .78rem .9rem; border: 1px solid var(--line); border-radius: var(--radius-sm); background: rgba(3,4,7,.62); color: #fff; transition: border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast); }
  .form-group textarea,textarea.form-control { min-height: 132px; resize: vertical; }
  .form-group input:hover,.form-group select:hover,.form-group textarea:hover,.form-control:hover,.form-select:hover { border-color: var(--line-strong); }
  .form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-control:focus,.form-select:focus { border-color: var(--brand-400); background: rgba(3,4,7,.92); box-shadow: 0 0 0 4px rgba(228,8,50,.14); outline: none; }
  .form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea,[aria-invalid="true"] { border-color: var(--danger); }
  .error-message { display: none; color: var(--danger); font-size: .78rem; }
  .has-error .error-message { display: block; }
  .form-privacy,.form-text,.form-hint { color: var(--text-muted); font-size: .78rem; }
  .form-privacy a,.form-text a { color: var(--brand-300); }
  .form-message-panel { margin-bottom: 1rem; padding: .9rem 1rem; border: 1px solid; border-radius: var(--radius-sm); }
  .form-message-panel.success { border-color: rgba(86,214,154,.35); background: rgba(86,214,154,.1); color: #9bedc3; }
  .form-message-panel.error { border-color: rgba(255,102,122,.35); background: rgba(255,102,122,.1); color: #ff9dac; }
  .checkbox-line { display: flex; align-items: flex-start; gap: .7rem; }
  .checkbox-line input { margin-top: .35rem; }

  .page-hero { min-height: 430px; display: grid; align-items: end; padding-block: clamp(7rem,12vw,10rem) clamp(3rem,6vw,5rem); overflow: clip; background: radial-gradient(circle at 85% 20%,rgba(228,8,50,.18),transparent 28rem),linear-gradient(145deg,var(--surface-2),var(--surface-0)); isolation: isolate; }
  .page-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom,black,transparent); }
  .page-hero__media { position: absolute; inset: 0; z-index: -2; }
  .page-hero__media img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.3) saturate(.75); }
  .page-hero__inner { position: relative; }
  .page-hero h1 { max-width: 15ch; margin-bottom: 1rem; font-size: var(--step-4); }
  .page-hero p { max-width: 66ch; margin: 0; color: var(--text-soft); font-size: var(--step-1); }
  .breadcrumb { margin-bottom: 1.3rem; }
  .breadcrumb ol { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem; padding: 0; list-style: none; color: var(--text-muted); font-size: .78rem; }
  .breadcrumb li { display: inline-flex; align-items: center; gap: .55rem; }
  .breadcrumb li:not(:last-child)::after { content: "/"; color: rgba(255,255,255,.25); }
  .breadcrumb a { color: var(--text-soft); text-decoration: none; }

  .rich-content { max-width: 78ch; }
  .rich-content :where(h2,h3) { margin-top: 1.5em; }
  .rich-content :where(p,li) { color: var(--text-soft); }
  .detail-image { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: var(--radius-xl); box-shadow: var(--shadow-md); }
  .cms-empty,.empty-page { padding: clamp(2rem,5vw,4rem); border: 1px dashed var(--line-strong); border-radius: var(--radius-xl); background: rgba(255,255,255,.025); color: var(--text-muted); text-align: center; }
  .empty-page__icon { margin-bottom: .5rem; color: rgba(255,255,255,.08); font-size: clamp(5rem,15vw,10rem); font-weight: 900; line-height: 1; }
  .empty-page .button-group { justify-content: center; }

  .map-card { margin-top: 1.5rem; border: 1px solid var(--line); border-radius: var(--radius-lg); overflow: hidden; }
  .map-embed { aspect-ratio: 16/9; }
  .map-embed iframe { width: 100%; height: 100%; border: 0; }

  .footer { position: relative; padding-top: var(--space-9); border-top: 1px solid var(--line); background: #030407; overflow: clip; }
  .footer-glow { position: absolute; width: 40rem; height: 40rem; right: -15rem; top: -25rem; border-radius: 50%; background: rgba(228,8,50,.12); filter: blur(80px); pointer-events: none; }
  .footer-grid { position: relative; display: grid; grid-template-columns: 1.4fr .65fr .75fr 1fr; gap: clamp(2rem,4vw,4rem); padding-bottom: 4rem; }
  .footer-brand-logo { display: inline-flex; margin-bottom: 1.2rem; }
  .footer-brand-logo img { width: min(270px,100%); }
  .footer-col--brand > p { max-width: 44ch; color: var(--text-muted); }
  .footer-title { margin-bottom: 1.2rem; font-size: 1rem; letter-spacing: .04em; }
  .footer-list { display: grid; gap: .65rem; padding: 0; list-style: none; }
  .footer-list a { color: var(--text-muted); text-decoration: none; }
  .footer-list a:hover { color: #fff; }
  .footer-contact-list li { display: flex; gap: .7rem; align-items: flex-start; color: var(--text-muted); }
  .footer-contact-list svg { margin-top: .25rem; color: var(--brand-300); }
  .footer-trust { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.2rem 0; }
  .footer-trust span { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .65rem; border: 1px solid var(--line); border-radius: var(--radius-pill); color: var(--text-soft); font-size: .75rem; }
  .footer-trust svg { color: var(--brand-300); }
  .footer-social { display: flex; gap: .5rem; }
  .footer-social a { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: var(--text-muted); text-decoration: none; }
  .footer-social a:hover { border-color: var(--brand-400); color: #fff; }
  .footer-button { margin-top: 1.3rem; }
  .footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: 1.25rem; border-top: 1px solid var(--line); color: var(--text-muted); font-size: .76rem; }

  .bay-pro-floating-actions { position: fixed; right: max(1rem,env(safe-area-inset-right)); bottom: max(1rem,env(safe-area-inset-bottom)); z-index: 800; display: grid; gap: .55rem; transition: opacity var(--transition),transform var(--transition); }
  .bay-pro-floating-action { position: relative; display: flex; align-items: center; justify-content: flex-end; gap: .65rem; color: #fff; text-decoration: none; }
  .bay-pro-floating-icon { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(10,12,17,.9); box-shadow: var(--shadow-sm); backdrop-filter: blur(14px); transition: transform var(--transition-fast),background var(--transition-fast); }
  .bay-pro-floating-label { position: absolute; right: 58px; width: max-content; max-width: 220px; padding: .55rem .75rem; border: 1px solid var(--line); border-radius: var(--radius-sm); background: rgba(10,12,17,.94); color: var(--text-soft); font-size: .76rem; opacity: 0; transform: translateX(8px); pointer-events: none; transition: opacity var(--transition-fast),transform var(--transition-fast); }
  .bay-pro-floating-action:hover .bay-pro-floating-icon { transform: scale(1.06); background: var(--brand-500); }
  .bay-pro-floating-action:hover .bay-pro-floating-label,.bay-pro-floating-action:focus-visible .bay-pro-floating-label { opacity: 1; transform: translateX(0); }
  .bay-pro-floating-action-whatsapp .bay-pro-floating-icon { background: #168f55; }
  .hide-floating-actions .bay-pro-floating-actions { opacity: 0; transform: translateY(12px); pointer-events: none; }

  .back-to-top { position: fixed; left: max(1rem,env(safe-area-inset-left)); bottom: max(1rem,env(safe-area-inset-bottom)); z-index: 790; width: 46px; height: 46px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: rgba(10,12,17,.88); color: #fff; opacity: 0; transform: translateY(12px); pointer-events: none; text-decoration: none; backdrop-filter: blur(14px); transition: opacity var(--transition),transform var(--transition),background var(--transition-fast); }
  .back-to-top.is-visible { opacity: 1; transform: translateY(0); pointer-events: auto; }
  .back-to-top:hover { background: var(--brand-500); }

  .bay-lightbox { position: fixed; inset: 0; z-index: 5000; display: grid; place-items: center; padding: 1rem; background: rgba(0,0,0,.88); backdrop-filter: blur(12px); }
  .bay-lightbox__dialog { position: relative; width: min(1120px,100%); max-height: calc(100svh - 2rem); display: grid; justify-items: center; }
  .bay-lightbox__image { max-width: 100%; max-height: calc(100svh - 7rem); border-radius: var(--radius-md); box-shadow: var(--shadow-md); }
  .bay-lightbox__caption { margin-top: .8rem; color: var(--text-soft); text-align: center; }
  .bay-lightbox__close { position: absolute; top: .7rem; right: .7rem; z-index: 1; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(0,0,0,.7); color: #fff; font-size: 1.8rem; line-height: 1; }

  .reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s var(--ease),transform .7s var(--ease); }
  .reveal.is-visible { opacity: 1; transform: translateY(0); }
}

@layer utilities {
  .text-muted { color: var(--text-muted); }
  .text-white { color: #fff; }
  .text-danger { color: var(--danger); }
  .fw-bold { font-weight: 800; }
  .small { font-size: var(--step--1); }
  .d-flex { display: flex; }
  .d-none { display: none; }
  .align-items-center { align-items: center; }
  .justify-content-between { justify-content: space-between; }
  .flex-column { flex-direction: column; }
  .gap-1 { gap: .25rem; }
  .gap-2 { gap: .5rem; }
  .gap-3 { gap: 1rem; }
  .mb-3 { margin-bottom: 1rem; }
  .mb-4 { margin-bottom: 1.5rem; }
  .mt-3 { margin-top: 1rem; }
  .pt-3 { padding-top: 1rem; }
  .pt-5 { padding-top: 3rem; }
  .pb-3 { padding-bottom: 1rem; }
  .px-3 { padding-inline: 1rem; }
  .mx-auto { margin-inline: auto; }
  .list-unstyled { padding: 0; list-style: none; }
  .text-decoration-none { text-decoration: none; }
  .border-0 { border: 0; }
}

@layer enhancements {
  @supports (content-visibility: auto) {
    main > section:not(.home-hero):not(.page-hero) { content-visibility: auto; contain-intrinsic-size: auto 760px; }
  }
  @supports (background: color-mix(in srgb,#000,#fff)) {
    .service-card:hover,.listing-card:hover { border-color: color-mix(in srgb,var(--brand-400) 55%,transparent); }
  }
  @supports selector(:has(*)) {
    .form-group:has(:required) label::after { content: " *"; color: var(--brand-300); }
  }
  @view-transition { navigation: auto; }
  ::view-transition-old(root),::view-transition-new(root) { animation-duration: .22s; animation-timing-function: ease-out; }

  @container (max-width: 620px) {
    .service-grid { grid-template-columns: 1fr; }
  }

  @media (max-width: 1100px) {
    .nav-panel { position: fixed; inset: var(--menu-top,var(--header-height)) 0 auto; max-height: calc(100svh - var(--menu-top,var(--header-height))); display: grid; grid-template-rows: 1fr auto; padding: 1rem; border-top: 1px solid var(--line); background: rgba(5,6,9,.985); backdrop-filter: blur(22px); transform: translateY(-110%); opacity: 0; visibility: hidden; transition: transform var(--transition),opacity var(--transition),visibility var(--transition); overflow-y: auto; }
    .nav-panel.is-open { transform: translateY(0); opacity: 1; visibility: visible; }
    .nav-links { display: grid; align-content: start; gap: .35rem; }
    .nav-links li { width: 100%; }
    .nav-link { min-height: 54px; width: 100%; justify-content: space-between; padding: .8rem 1rem; border-radius: var(--radius-md); font-size: 1rem; }
    .nav-link::after { display: none; }
    .nav-panel__footer { display: block; padding-top: 1rem; border-top: 1px solid var(--line); }
    .nav-contact { display: flex; align-items: center; gap: .8rem; padding: .8rem; border-radius: var(--radius-md); background: rgba(255,255,255,.035); text-decoration: none; }
    .nav-contact svg { color: var(--brand-300); }
    .nav-contact span { display: grid; color: #fff; }
    .nav-contact small { color: var(--text-muted); font-size: .7rem; }
    .menu-toggle { display: flex; }
    .home-hero__inner { grid-template-columns: 1fr; align-items: center; }
    .home-hero__panel { max-width: 520px; }
    .footer-grid { grid-template-columns: 1.2fr 1fr 1fr; }
    .footer-contact { grid-column: 2 / -1; }
  }

  @media (max-width: 820px) {
    :root { --header-height: 72px; }
    section { padding-block: var(--space-8); }
    .top-bar-email,.trust-chip span { display: none; }
    .nav-cta { display: none; }
    .logo-image { width: min(230px,56vw); }
    .home-hero { min-height: auto; padding-block: 7rem 5rem; }
    .home-hero h1 { font-size: clamp(3rem,13vw,5rem); }
    .home-hero__panel { display: none; }
    .hero-scroll { display: none; }
    .home-proof > .container,.founder-grid,.testimonial-layout,.faq-layout,.contact-grid,.split-layout { grid-template-columns: 1fr; }
    .service-grid,.listing-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .process-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .process-grid::before { display: none; }
    .gallery-grid--editorial { grid-auto-rows: 200px; }
    .gallery-trigger--feature { grid-column: span 2; }
    .faq-intro { position: static; }
    .cta-shell { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .footer-col--brand { grid-column: 1 / -1; }
    .footer-contact { grid-column: auto; }
  }

  @media (max-width: 560px) {
    .container { width: min(calc(100% - 1.25rem),var(--content-max)); }
    .top-bar__inner { min-height: 34px; }
    .top-bar-social { display: none; }
    .navbar { min-height: 68px; }
    .home-hero { padding-top: 5.8rem; }
    .home-hero h1 { max-width: 100%; font-size: clamp(2.2rem,9.7vw,3.4rem); line-height: .98; overflow-wrap: normal; word-break: normal; hyphens: none; }
    .home-hero__content > p { font-size: 1rem; }
    .home-hero__assurance { display: grid; }
    .button-group .btn,.cta-actions .btn { width: 100%; }
    .section-heading--split { display: grid; align-items: start; }
    .stat-grid,.service-grid,.listing-grid,.process-grid,.contact-shortcuts,.form-row,.footer-grid { grid-template-columns: 1fr; }
    .service-card__link { min-height: 280px; }
    .founder-image-badge { right: .8rem; bottom: .8rem; }
    .gallery-grid { grid-template-columns: 1fr; }
    .gallery-grid--editorial { grid-auto-rows: 260px; }
    .gallery-trigger--feature { grid-column: auto; grid-row: auto; }
    .testimonial-slide { min-height: 340px; }
    .footer-col--brand,.footer-contact { grid-column: auto; }
    .footer-bottom { align-items: flex-start; flex-direction: column; }
    .bay-pro-floating-label { display: none; }
    .bay-pro-floating-icon { width: 46px; height: 46px; }
    .back-to-top { display: none; }
  }

  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *,*::before,*::after { animation-duration: .01ms; animation-iteration-count: 1; transition-duration: .01ms; scroll-behavior: auto; }
    .reveal { opacity: 1; transform: none; }
  }

  @media (forced-colors: active) {
    .btn,.service-card,.listing-card,.stat-card,.faq-item,.premium-form,.footer-social a { border: 1px solid ButtonText; }
    .eyebrow::before { background: CanvasText; }
  }
}

@keyframes preloaderPulse { from { opacity: .55; transform: scale(.985); } to { opacity: 1; transform: scale(1); } }

/* BAY FINAL CONSISTENCY HOTFIX V5 */
@layer enhancements {
  .bay-svg-icon {
    display: inline-grid;
    place-items: center;
    width: 1em;
    height: 1em;
    min-width: 1em;
    min-height: 1em;
    flex: 0 0 1em;
    color: currentColor;
    line-height: 1;
    vertical-align: -.12em;
  }
  .bay-svg-icon > svg {
    display: block;
    width: 1em;
    height: 1em;
    max-width: none;
    overflow: visible;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.85;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
  }
  .bay-honeypot {
    position: fixed;
    inset: auto auto 0 -10000px;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
  }
  .contact-info > ul,
  .contact-list {
    display: grid;
    gap: .35rem;
    margin: 1.25rem 0 1rem;
    padding: 0;
    list-style: none;
  }
  .contact-info > ul > li,
  .contact-list > li {
    display: grid;
    grid-template-columns: 2rem minmax(0,1fr);
    gap: .85rem;
    align-items: start;
    padding: 1rem 0;
    border-bottom: 1px solid var(--line);
  }
  .contact-info > ul > li > .bay-svg-icon,
  .contact-list > li > .bay-svg-icon {
    margin-top: .15rem;
    color: var(--brand-300);
    font-size: 1.2rem;
  }
  .contact-info > ul > li > div,
  .contact-list > li > div {
    display: grid;
    gap: .18rem;
    min-width: 0;
  }
  .contact-info > ul > li small,
  .contact-list > li small {
    color: var(--text-muted);
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .contact-info > ul > li a,
  .contact-info > ul > li span,
  .contact-list > li a,
  .contact-list > li span {
    min-width: 0;
    color: var(--text-soft);
    overflow-wrap: anywhere;
  }
  .cms-faq-list {
    display: grid;
    gap: .85rem;
  }
  .cms-faq-list .faq-heading {
    margin: 0;
    font: inherit;
  }
  .cms-faq-list .faq-question {
    color: var(--text-strong);
    font-size: clamp(1rem,.92rem + .35vw,1.2rem);
    line-height: 1.35;
  }
  .cms-faq-list .faq-toggle-mark {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: var(--brand-300);
    font-size: 1.25rem;
    line-height: 1;
    transition: transform var(--transition-fast),background var(--transition-fast);
  }
  .cms-faq-list .faq-question[aria-expanded="true"] .faq-toggle-mark {
    transform: rotate(45deg);
    background: rgba(228,8,50,.12);
  }
  .cms-faq-list .faq-answer {
    color: var(--text-soft);
  }
  .bay-lightbox[hidden],
  body:not(.dialog-open) .bay-lightbox {
    display: none;
  }
  body.dialog-open .bay-lightbox:not([hidden]) {
    display: grid;
  }
  @media (max-width: 560px) {
    .contact-info > ul > li,
    .contact-list > li {
      grid-template-columns: 1.75rem minmax(0,1fr);
    }
  }
}
@layer enhancements {
  .contact-list > li > div > span,
  .contact-info > ul > li > div > span {
    color: var(--text-soft);
    font-size: .96rem;
    letter-spacing: normal;
    text-transform: none;
  }
}
