:root{
      --bg:#0e151c;
      --bg-2:#15222d;
      --bg-3:#1c2c3a;
      --card:rgba(255,255,255,.055);
      --card-2:rgba(255,255,255,.04);
      --border:rgba(255,255,255,.10);
      --gold:#c7a667;
      --gold-2:#ecd8b2;
      --white:#ffffff;
      --text:#d9e1e8;
      --muted:#a3b0bb;
      --shadow:0 18px 48px rgba(0,0,0,.22);
      --radius-xl:32px;
      --radius-lg:24px;
      --radius-md:18px;
      --max:1220px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:'Montserrat',Arial,sans-serif;
      background:
        radial-gradient(circle at top right, rgba(199,166,103,.16), transparent 24%),
        radial-gradient(circle at bottom left, rgba(199,166,103,.08), transparent 28%),
        linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);
      color:var(--text);
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
    }
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%;height:auto}
    p{margin:0 0 16px}
    .skip-link{
      position:absolute;left:-9999px;top:0;
      background:#fff;color:#111;padding:10px 14px;z-index:1000
    }
    .skip-link:focus{left:12px;top:12px}
    .site-shell{min-height:100vh}
    .container-xl{max-width:var(--max);margin:0 auto;padding:0 20px}
    .topbar{
      position:sticky;top:0;z-index:200;
      background:rgba(10,16,23,.84);
      backdrop-filter:blur(14px);
      border-bottom:1px solid rgba(255,255,255,.08)
    }
    .topbar-inner{
      max-width:var(--max);margin:0 auto;padding:16px 20px;
      display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap
    }
    .brand-wrap{display:flex;align-items:center;gap:14px;min-width:0}
.brand-wrap img{width:164px;height:auto;flex:0 0 auto}
.brand-copy{text-align:center}
.brand-copy small{
  display:block;color:var(--gold-2);text-transform:uppercase;letter-spacing:.18em;
  font-size:11px;margin-bottom:4px;font-weight:800
}
.brand-copy strong{display:block;font-size:18px;color:var(--white);letter-spacing:.04em}
.brand-copy span{display:block;color:var(--muted);font-size:12px}
    .topbar-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
    .nav-link,.phone-cta,.primary-cta,.ghost-cta,.mini-cta{
      display:inline-flex;align-items:center;justify-content:center;min-height:48px;
      border-radius:999px;padding:13px 20px;font-size:13px;font-weight:800;
      text-align:center;line-height:1.25;transition:transform .2s ease, box-shadow .2s ease, background .2s ease
    }
    .nav-link{color:var(--text)}
    .nav-link:hover,.nav-link:focus-visible{background:rgba(255,255,255,.06)}
    .phone-cta,.primary-cta,.mini-cta{
      background:linear-gradient(135deg, var(--gold), #b98d49);
      color:#101820;box-shadow:0 12px 24px rgba(199,166,103,.20)
    }
    .ghost-cta{
      color:var(--white);border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04)
    }
    .phone-cta:hover,.primary-cta:hover,.ghost-cta:hover,.mini-cta:hover{transform:translateY(-1px)}
    .hero{padding:28px 0 0}
    .hero-panel{
      position:relative;overflow:hidden;min-height:690px;display:grid;align-items:center;
      border-radius:36px;border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);
      background:
        linear-gradient(120deg, rgba(14,21,28,.97) 6%, rgba(14,21,28,.88) 42%, rgba(14,21,28,.54) 100%),
        url('../images/index-9-1047x531.png') center/cover no-repeat
    }
    .hero-content{position:relative;z-index:2;width:min(810px,100%);padding:64px 54px}
    .eyebrow,.label{
      display:inline-block;width:fit-content;padding:8px 13px;border-radius:999px;
      border:1px solid rgba(199,166,103,.26);background:rgba(199,166,103,.12);
      color:var(--gold-2);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase
    }
    .eyebrow{margin-bottom:18px}
    h1,h2,h3{color:var(--white);margin-top:0}
    h1{
      font-size:clamp(30px,4.4vw,54px);line-height:1.04;letter-spacing:-.03em;
      margin-bottom:14px;max-width:15ch
    }
    h2{font-size:clamp(29px,4vw,44px);line-height:1.08;letter-spacing:-.02em;margin-bottom:12px}
    h3{font-size:22px;line-height:1.2;margin-bottom:10px}
    .hero-lead,.section-heading p,.panel-card p,.brand-card p,.service-card p,.feature-card p,.faq-item p,.process-card p,.area-card p,.callout-card p,.contact-box p,.form-shell p{
      font-size:16px;line-height:1.78;color:var(--text)
    }
    .hero-lead{font-size:17px;max-width:58ch;margin-bottom:0}
    .hero-actions,.stack-actions,.mini-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
    .hero-meta,.city-chips{display:flex;gap:10px;flex-wrap:wrap}
    .hero-meta{margin-top:22px}
    .hero-chip,.service-chip{
      display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;
      border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);
      color:var(--white);font-size:13px;font-weight:700;line-height:1.25
    }
    .trust-row,.brand-grid,.service-grid,.feature-grid,.faq-grid,.process-grid,.area-grid{
      display:grid;gap:18px
    }
    .trust-row{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:34px}
    .grid-2,.contact-wrap,.split-callout{display:grid;gap:24px}
    .grid-2{grid-template-columns:1.04fr .96fr}
    .contact-wrap{grid-template-columns:.96fr 1.04fr;align-items:start}
    .split-callout{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
    .brand-grid,.service-grid,.feature-grid,.faq-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .trust-card,.panel-card,.brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{
      background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow)
    }
    .trust-card{padding:18px;border-radius:var(--radius-md)}
    .panel-card{padding:30px;border-radius:var(--radius-xl)}
    .brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{
      padding:24px;border-radius:24px;min-height:100%
    }
    .service-card,.feature-card{background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.04))}
    .callout-card{background:linear-gradient(180deg, rgba(199,166,103,.10), rgba(255,255,255,.03));border-color:rgba(199,166,103,.20)}
    .trust-card strong,.eyeline,.process-step{
      display:block;color:var(--gold-2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px
    }
    .trust-card span{color:var(--white);font-size:16px;font-weight:600;line-height:1.5}
    .section-block{padding:28px 0 0}
    .section-heading{max-width:900px;margin-bottom:26px}
    .brand-link{
      color:var(--gold-2);font-weight:800;font-size:14px;margin-top:14px;display:inline-flex;align-items:center;gap:8px
    }
    .service-card-link{display:flex;flex-direction:column;color:inherit;text-decoration:none}
    .service-card-link .service-cta{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:14px;color:var(--gold-2);font-size:14px;font-weight:800}
    .service-card-link:hover .service-cta,.service-card-link:focus-visible .service-cta{text-decoration:underline}
    .brand-card-link{display:flex;flex-direction:column;color:inherit;text-decoration:none}
    .brand-card-link .brand-link{margin-top:auto;padding-top:14px}
    .brand-card-link:hover .brand-link,.brand-card-link:focus-visible .brand-link{text-decoration:underline}

    .list-checks,.service-list,.area-list,.contact-points{
      display:grid;gap:14px;margin:0;padding:0;list-style:none
    }
    .list-checks li,.contact-points a,.contact-points div{
      padding:18px 20px;border-radius:18px;background:var(--card-2);border:1px solid rgba(255,255,255,.09);line-height:1.68
    }
    .service-list,.area-list{gap:10px;margin-top:16px}
    .service-list li,.area-list li{color:var(--text);line-height:1.65}
    .list-checks strong,.service-list strong,.area-list strong{color:var(--white)}
    .contact-points a,.contact-points div{font-weight:700;color:var(--white)}
    .city-chips{margin-top:18px}
    .rd-mailform .form-wrap, .crvhs-contact-form .form-wrap{margin-bottom:14px}
    .rd-mailform .form-label, .crvhs-contact-form .form-label{
      display:block;margin-bottom:8px;font-size:13px;color:var(--gold-2);font-weight:800;
      letter-spacing:.08em;text-transform:uppercase
    }
    .rd-mailform .form-input,.rd-mailform select,.rd-mailform textarea,.crvhs-contact-form .form-input,.crvhs-contact-form select,.crvhs-contact-form textarea{
      width:100%;min-height:52px;padding:15px 16px;outline:none;
      border-radius:16px;border:1px solid rgba(255,255,255,.12);
      background:rgba(8,14,20,.60);color:var(--white);font-size:16px;line-height:1.4;
      -webkit-appearance:none;appearance:none
    }
    .rd-mailform textarea, .crvhs-contact-form textarea{min-height:150px;resize:vertical}
    .rd-mailform .form-input::placeholder,.rd-mailform textarea::placeholder,.crvhs-contact-form .form-input::placeholder,.crvhs-contact-form textarea::placeholder{color:#9aa6b2}
    .rd-mailform .button, .crvhs-contact-form .button{
      width:100%;min-height:54px;border:0;border-radius:999px;padding:16px 18px;
      background:linear-gradient(135deg, var(--gold), #b98d49);color:#101820;
      font-size:15px;font-weight:800;box-shadow:0 12px 24px rgba(199,166,103,.20)
    }
    .footer{padding:54px 0 44px}
    .footer-inner{
      display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:28px 30px;
      border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)
    }
    .footer p,.footer small{margin:0;color:var(--muted);line-height:1.7}
    .footer a{color:var(--gold-2);font-weight:800}
    @media (max-width:1080px){
      .trust-row{grid-template-columns:repeat(2,minmax(0,1fr))}
      .grid-2,.contact-wrap,.area-grid,.split-callout{grid-template-columns:1fr}
    }
    @media (max-width:991px){
      .hero-panel{min-height:auto}
      .hero-content{padding:44px 30px}
      .overview-grid,.brand-grid,.service-grid,.feature-grid,.faq-grid,.process-grid,.trust-row{grid-template-columns:1fr}
      .form-grid{grid-template-columns:1fr}
    }
    @media (max-width:720px){
      .topbar-inner{align-items:flex-start}
      .brand-wrap{width:100%}
      .brand-wrap img{width:132px}
      .topbar-nav{width:100%;justify-content:flex-start}
      h1{max-width:none}
      .hero-content,.panel-card,.brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{padding:22px}
      .hero-actions,.stack-actions,.mini-actions{display:grid;grid-template-columns:1fr}
      .primary-cta,.ghost-cta,.phone-cta,.mini-cta{width:100%}
    }
    @media (max-width:520px){
      .container-xl,.topbar-inner{padding-left:16px;padding-right:16px}
      .brand-wrap{align-items:flex-start}
      .brand-copy strong{font-size:17px}
      .hero{padding-top:18px}
      .hero-content{padding:24px 18px}
      .hero-panel{border-radius:24px}
      .section-heading{padding-left:16px}
      .overview-card{padding:18px}
      .hero-lead,.section-heading p,.panel-card p,.brand-card p,.service-card p,.feature-card p,.faq-item p,.process-card p,.area-card p,.callout-card p,.contact-box p,.form-shell p{font-size:15px}
      .service-chip,.hero-chip{font-size:12px}
      .city-chips .service-chip{width:calc(50% - 5px)}
    }

    .section-index{padding:26px 0 0}
    .overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
    .overview-card{
      display:block;padding:22px 20px;border-radius:22px;
      background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.035));
      border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow);min-height:100%
    }
    .overview-card strong{display:block;color:var(--white);font-size:17px;margin-bottom:8px}
    .overview-card span{display:block;color:var(--muted);font-size:14px;line-height:1.65}
    .overview-card:hover,.overview-card:focus-visible{transform:translateY(-2px);border-color:rgba(199,166,103,.26)}
    .section-block{padding:40px 0 0}
    .section-block .container-xl{position:relative}
    .section-block .container-xl::before{
      content:"";display:block;height:1px;margin:0 0 30px;
      background:linear-gradient(90deg, rgba(199,166,103,.42), rgba(255,255,255,.08), rgba(255,255,255,0))
    }
    .section-heading{
      max-width:960px;margin-bottom:26px;padding-left:22px;
      border-left:3px solid rgba(199,166,103,.45)
    }
    #brands .grid-2{align-items:start}
    .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
    .form-grid > .form-wrap{margin-bottom:0}
    .rd-mailform .form-wrap, .crvhs-contact-form .form-wrap{margin-bottom:14px;position:static !important}
    .rd-mailform .form-label, .crvhs-contact-form .form-label{
      display:block !important;position:static !important;top:auto !important;left:auto !important;
      right:auto !important;opacity:1 !important;visibility:visible !important;transform:none !important;
      margin-bottom:8px !important;font-size:13px;color:var(--gold-2);font-weight:800;
      letter-spacing:.08em;text-transform:uppercase;pointer-events:auto !important;height:auto !important
    }
    .rd-mailform .form-input,.rd-mailform select,.rd-mailform textarea,.crvhs-contact-form .form-input,.crvhs-contact-form select,.crvhs-contact-form textarea{
      width:100%;min-height:52px;padding:15px 16px !important;outline:none;
      border-radius:16px;border:1px solid rgba(255,255,255,.12);
      background:rgba(8,14,20,.60);color:var(--white);font-size:16px;line-height:1.4;
      -webkit-appearance:none;appearance:none
    }
    .rd-mailform .form-input::placeholder,.rd-mailform textarea::placeholder,.crvhs-contact-form .form-input::placeholder,.crvhs-contact-form textarea::placeholder{color:transparent}

    [id]{scroll-margin-top:110px}
    @media (min-width:1200px){
      .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
      .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
      .process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    }


    /* Premium rhythm refinement */
    body::before{
      content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
      background:
        linear-gradient(90deg, rgba(255,255,255,.018) 0, rgba(255,255,255,0) 18%, rgba(255,255,255,0) 82%, rgba(255,255,255,.018) 100%),
        radial-gradient(circle at 12% 10%, rgba(236,216,178,.08), transparent 24%),
        radial-gradient(circle at 84% 18%, rgba(236,216,178,.05), transparent 26%);
      opacity:.65
    }
    .site-shell{position:relative;z-index:1}
    .topbar{box-shadow:0 14px 34px rgba(0,0,0,.16)}
    .topbar-inner{padding-top:14px;padding-bottom:14px}
    .hero{padding:26px 0 0}
    .hero-panel{
      isolation:isolate;min-height:560px;border-radius:36px;
      box-shadow:0 30px 78px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.04)
    }
    .hero-panel::before{
      content:"";position:absolute;inset:0;z-index:1;
      background:
        radial-gradient(circle at 14% 14%, rgba(236,216,178,.12), transparent 24%),
        linear-gradient(180deg, rgba(255,255,255,.035), transparent 18%);
      pointer-events:none
    }
    .hero-panel::after{
      content:"";position:absolute;left:0;right:0;top:0;height:1px;z-index:1;
      background:linear-gradient(90deg, transparent, rgba(236,216,178,.68), transparent)
    }
    .hero-content{padding:56px 50px 42px}
    .hero-lead{max-width:60ch}
    .hero-actions{margin-top:24px}
    .hero-meta{margin-top:18px}
    .trust-row{gap:16px;margin-top:40px}
    .trust-card{
      position:relative;padding:22px 20px 20px;border-radius:22px;
      background:linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.048));
      backdrop-filter:blur(10px);
      box-shadow:0 22px 34px rgba(0,0,0,.18)
    }
    .trust-card::before,
    .panel-card::before,
    .brand-card::before,
    .service-card::before,
    .feature-card::before,
    .faq-item::before,
    .process-card::before,
    .area-card::before,
    .callout-card::before,
    .contact-box::before,
    .form-shell::before{
      content:"";position:absolute;left:22px;right:22px;top:0;height:1px;
      background:linear-gradient(90deg, rgba(236,216,178,.58), rgba(255,255,255,.10), rgba(255,255,255,0))
    }
    .section-index{padding:36px 0 0}
    .overview-grid{gap:18px;counter-reset:overview}
    .overview-card{
      position:relative;overflow:hidden;padding:56px 24px 24px;border-radius:24px;
      transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
      box-shadow:0 20px 32px rgba(0,0,0,.18)
    }
    .overview-card::before{
      counter-increment:overview;content:"0" counter(overview);
      position:absolute;left:24px;top:18px;color:var(--gold-2);
      font-size:11px;font-weight:800;letter-spacing:.20em;text-transform:uppercase
    }
    .overview-card::after{
      content:"";position:absolute;left:24px;right:24px;top:42px;height:1px;
      background:linear-gradient(90deg, rgba(236,216,178,.5), rgba(255,255,255,.08), rgba(255,255,255,0))
    }
    .overview-card strong{font-size:18px;margin-bottom:10px}
    .section-block{padding:74px 0 0}
    .section-block .container-xl::before{margin:0 0 42px}
    .section-heading{max-width:940px;margin-bottom:30px;padding-left:26px}
    .section-heading h2{max-width:14ch;margin-bottom:14px}
    #brands .section-heading h2,
    #features .section-heading h2,
    #service-area .section-heading h2,
    #process .section-heading h2,
    #contact .section-heading h2{max-width:16ch}
    .section-kicker{
      display:inline-block;margin:0 0 12px;padding-bottom:10px;
      color:var(--gold-2);font-size:11px;font-weight:800;letter-spacing:.18em;
      text-transform:uppercase;border-bottom:1px solid rgba(199,166,103,.32)
    }
    .grid-2,.contact-wrap,.split-callout{gap:30px}
    .brand-grid,.service-grid,.feature-grid,.faq-grid,.process-grid,.area-grid{gap:20px}
    .panel-card,.brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{position:relative}
    .panel-card{
      padding:34px;border-radius:30px;
      background:linear-gradient(180deg, rgba(255,255,255,.065), rgba(255,255,255,.038));
      box-shadow:0 26px 44px rgba(0,0,0,.18)
    }
    .brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{
      display:flex;flex-direction:column;padding:27px;border-radius:26px;
      transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease
    }
    .brand-card:hover,.service-card:hover,.feature-card:hover,.faq-item:hover,.process-card:hover,.area-card:hover,.callout-card:hover,.overview-card:hover,
    .brand-card:focus-within,.service-card:focus-within,.feature-card:focus-within,.faq-item:focus-within,.process-card:focus-within,.area-card:focus-within,.callout-card:focus-within,.overview-card:focus-visible{
      transform:translateY(-3px);border-color:rgba(199,166,103,.24);box-shadow:0 28px 46px rgba(0,0,0,.22)
    }
    .brand-card,.feature-card,.faq-item,.process-card,.area-card{
      background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.045))
    }
    .service-card{
      background:linear-gradient(180deg, rgba(255,255,255,.078), rgba(255,255,255,.042))
    }
    .callout-card{
      padding:30px;background:
      linear-gradient(180deg, rgba(199,166,103,.13), rgba(255,255,255,.035));
      box-shadow:0 26px 44px rgba(0,0,0,.18)
    }
    .brand-link{margin-top:auto;padding-top:12px}
    .service-list,.area-list{margin-top:18px}
    .contact-box{
      background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.045));
      box-shadow:0 26px 44px rgba(0,0,0,.19)
    }
    .form-shell{
      background:linear-gradient(180deg, rgba(8,14,20,.82), rgba(8,14,20,.66));
      box-shadow:0 26px 44px rgba(0,0,0,.24)
    }
    .contact-points a,.contact-points div{padding:20px 22px}
    .footer{padding:72px 0 46px}
    .footer-inner{
      padding:34px 36px;
      background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.035));
      box-shadow:0 24px 40px rgba(0,0,0,.18)
    }
    @media (min-width:1081px){
      .contact-box{position:sticky;top:106px}
    }
    @media (max-width:1080px){
      .section-block{padding-top:62px}
      .section-block .container-xl::before{margin-bottom:34px}
    }
    @media (max-width:991px){
      .hero-content{padding:38px 30px 28px}
      .overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .section-heading{padding-left:20px}
      .panel-card{padding:28px}
    }
    @media (max-width:720px){
      .hero{padding-top:22px}
      .hero-content{padding:28px 22px 22px}
      .trust-row{gap:14px;margin-top:28px}
      .overview-card{padding:52px 20px 20px}
      .panel-card,.brand-card,.service-card,.feature-card,.faq-item,.process-card,.area-card,.callout-card,.contact-box,.form-shell{padding:24px}
      .section-block{padding-top:54px}
      .section-heading{padding-left:16px}
      .section-heading h2{max-width:none}
      #service-area .section-heading{
        max-width:100%;
        margin-left:auto;
        margin-right:auto;
        padding-left:0;
        border-left:0;
        text-align:center;
      }
      #service-area .section-kicker{
        display:inline-block;
        margin-left:auto;
        margin-right:auto;
      }
      .footer-inner{padding:28px 24px}
    }
    @media (max-width:520px){
      .hero-content{padding:22px 18px 18px}
      .hero-panel{border-radius:26px}
      .overview-grid{grid-template-columns:1fr}
      .overview-card{padding:50px 18px 18px}
      .section-index{padding-top:28px}
      .section-block{padding-top:48px}
      .section-block .container-xl::before{margin-bottom:28px}
      .section-heading{padding-left:0;border-left:0}
      .section-kicker{padding-bottom:8px}
    }

/* Utility classes moved from inline styles */
.contact-heading-tight{margin-bottom:12px;}
.footer-brand-name{color:#fff;}


/* Standalone CRVHS helpers */
.text-start{text-align:left}
.form-button{margin-top:10px}
button{font:inherit}
button, input, select, textarea{font-family:inherit}
.snackbars{position:fixed;right:18px;bottom:18px;z-index:500;display:grid;gap:10px;max-width:min(92vw,420px)}
.snackbars > *{padding:14px 16px;border-radius:16px;background:rgba(8,14,20,.94);color:var(--white);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 42px rgba(0,0,0,.24)}
.brand-card-link,.service-card-link{cursor:pointer}
.brand-card-link:focus-visible,.service-card-link:focus-visible,.nav-link:focus-visible,.phone-cta:focus-visible,.primary-cta:focus-visible,.ghost-cta:focus-visible,.mini-cta:focus-visible,.brand-link:focus-visible{outline:2px solid rgba(236,216,178,.85);outline-offset:3px}


/* Contact form status states */
.form-status{
  margin:16px 0 0;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:var(--white);
  line-height:1.6;
}
.form-status.is-loading{
  background:rgba(199,166,103,.12);
  border-color:rgba(199,166,103,.28);
  color:var(--gold-2);
}
.form-status.is-success{
  background:rgba(36,95,62,.22);
  border-color:rgba(94,191,131,.34);
  color:#d9f7e2;
}
.form-status.is-error{
  background:rgba(127,35,35,.22);
  border-color:rgba(255,120,120,.30);
  color:#ffd9d9;
}
.button[disabled]{
  opacity:.82;
  cursor:not-allowed;
}
.button.is-loading{
  box-shadow:0 12px 26px rgba(199,166,103,.16);
}


/* CRVHS contact form refinements */
.form-intro{
  margin-bottom:18px;
}
.form-note{
  margin:14px 0 0;
  color:var(--muted);
  line-height:1.65;
}
.contact-mini-points{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.contact-mini-points > div{
  padding:16px 20px;
  border-radius:18px;
  background:var(--card-2);
  border:1px solid rgba(255,255,255,.09);
  color:var(--text);
  line-height:1.68;
}
.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.form-status[hidden]{display:none !important;}
.crvhs-contact-form .form-input:focus,
.crvhs-contact-form select:focus,
.crvhs-contact-form textarea:focus{
  border-color:rgba(236,216,178,.55);
  box-shadow:0 0 0 3px rgba(199,166,103,.12);
}
.crvhs-contact-form .button{transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;}
.crvhs-contact-form .button:hover{transform:translateY(-1px);}


/* Contact form refinement - April 2026 */
.contact-wrap{
  align-items:start;
  gap:24px;
}
.contact-box,
.form-shell{
  position:relative;
  overflow:hidden;
}
.contact-box{
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04)),
    radial-gradient(circle at top left, rgba(199,166,103,.10), transparent 38%);
}
.form-shell{
  background:
    linear-gradient(180deg, rgba(9,14,20,.96), rgba(9,14,20,.88)),
    radial-gradient(circle at top right, rgba(199,166,103,.10), transparent 34%);
}
.contact-heading-tight{margin-bottom:20px}
.form-shell-header{margin-bottom:20px}
.form-eyebrow{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;padding:8px 12px;
  border-radius:999px;border:1px solid rgba(199,166,103,.24);
  background:rgba(199,166,103,.08);color:var(--gold-2);font-size:12px;font-weight:800;
  letter-spacing:.12em;text-transform:uppercase;
}
.form-section-card{
  margin:0 0 16px;padding:18px;border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 16px 28px rgba(0,0,0,.14);
}
.form-section-card-message{padding-bottom:14px}
.form-section-title{
  margin:0 0 14px;color:var(--white);font-size:14px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;
}
.form-grid-primary,
.form-grid-secondary{
  gap:16px;
}
.form-wrap-full{margin-bottom:0 !important}
.crvhs-contact-form .form-wrap{
  padding:14px;border-radius:18px;background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.06);
}
.crvhs-contact-form .form-wrap:focus-within{
  border-color:rgba(199,166,103,.34);
  box-shadow:0 0 0 3px rgba(199,166,103,.10);
}
.crvhs-contact-form .form-label{
  margin-bottom:10px !important;
}
.crvhs-contact-form .form-input,
.crvhs-contact-form select,
.crvhs-contact-form textarea{
  min-height:54px;
  padding:14px 15px !important;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(7,12,18,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.crvhs-contact-form textarea{
  min-height:160px;
}
.crvhs-contact-form .form-input::placeholder,
.crvhs-contact-form textarea::placeholder{
  color:#95a2af;
}
.crvhs-contact-form select{
  background-image:linear-gradient(45deg, transparent 50%, #d7c08d 50%), linear-gradient(135deg, #d7c08d 50%, transparent 50%);
  background-position:calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
  background-size:6px 6px, 6px 6px;
  background-repeat:no-repeat;
  padding-right:42px !important;
}
.form-help-row{
  display:grid;grid-template-columns:1fr;gap:10px;margin:8px 0 14px;
}
.form-note{
  margin:0;padding:14px 16px;border-radius:16px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);
  color:var(--muted);line-height:1.7;font-size:14px;
}
.form-note-soft{
  background:rgba(199,166,103,.05);
  border-color:rgba(199,166,103,.14);
}
.form-status{
  margin:0 0 14px;padding:16px 18px;border-radius:16px;
  border:1px solid rgba(255,255,255,.10);font-weight:700;line-height:1.6;
}
.form-status.is-loading{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08);color:var(--white)}
.form-status.is-success{background:rgba(35,111,69,.18);border-color:rgba(61,170,103,.32);color:#d8f3df}
.form-status.is-error{background:rgba(140,39,39,.18);border-color:rgba(212,86,86,.26);color:#ffd8d8}
.form-button{margin-top:8px}
.crvhs-contact-form .button{
  min-height:58px;
  font-size:16px;
  letter-spacing:.01em;
}
.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  opacity:0 !important;
}

@media (max-width:991px){
  .contact-wrap{grid-template-columns:1fr}
  .contact-box,.form-shell{padding:24px}
}

@media (max-width:720px){
  .contact-box,.form-shell{padding:20px}
  .form-section-card{padding:14px;border-radius:18px}
  .crvhs-contact-form .form-wrap{padding:12px;border-radius:16px}
  .crvhs-contact-form .form-input,
  .crvhs-contact-form select,
  .crvhs-contact-form textarea{
    min-height:52px;
    font-size:16px;
  }
  .form-status,.form-note{padding:14px}
}

@media (max-width:520px){
  .contact-wrap{gap:18px}
  .contact-heading-tight,
  .form-shell-header{margin-bottom:16px}
  .contact-box .section-heading,
  .form-shell-header{
    padding-left:14px;
  }
  .contact-box .section-heading h2,
  .form-shell h3{
    font-size:28px;
    line-height:1.12;
  }
  .contact-points,
  .contact-mini-points,
  .stack-actions{
    gap:12px;
  }
  .contact-points a,
  .contact-points div,
  .contact-mini-points div{
    padding:14px 15px;
    border-radius:16px;
    font-size:15px;
    line-height:1.55;
  }
  .form-grid,
  .form-grid-primary,
  .form-grid-secondary{
    grid-template-columns:1fr !important;
    gap:12px;
  }
  .crvhs-contact-form .form-wrap{
    margin-bottom:0;
  }
  .crvhs-contact-form .form-label{
    font-size:12px;
    letter-spacing:.07em;
  }
  .crvhs-contact-form .button{
    min-height:56px;
    border-radius:18px;
  }
}
