@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-neutral-50: oklch(98.5% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-400: oklch(70.8% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

:root{--orange:#E8721C;--black:#111111;--charcoal:#222222;--white:#fff;--tw-gradient-from:transparent;--tw-gradient-via:transparent;--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;line-height:1.5;-webkit-text-size-adjust:100%}
body{margin:0;font-family:Inter,Arial,sans-serif;color:#222;background:#fff;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,p{margin-top:0}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",Georgia,serif}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}ul,ol{margin:0;padding:0;list-style:none}
@keyframes scroll-x{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.reviews-track{animation:scroll-x 40s linear infinite}.reviews-track:hover{animation-play-state:paused}
.projects-track{animation:scroll-x 35s linear infinite}.projects-track:hover{animation-play-state:paused}
.section-pad{padding:80px 0}.hero-overlay{background:linear-gradient(to right,rgba(17,17,17,.85) 0%,rgba(17,17,17,.6) 55%,rgba(17,17,17,.1) 100%)}
.service-card{transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.12)}
.breadcrumb-nav{display:none}.process-line{position:relative}.process-line::before{content:"";position:absolute;left:20px;top:44px;bottom:-20px;width:2px;background:linear-gradient(to bottom,#E8721C,#f0a060)}.process-line:last-child::before{display:none}
.gallery-card{position:relative;overflow:hidden;border-radius:12px}.gallery-card img{transition:transform .4s ease}.gallery-card:hover img{transform:scale(1.05)}
.team-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08);transition:transform .3s ease}.team-card:hover{transform:translateY(-4px)}
.map-embed{border-radius:12px;overflow:hidden}.form-success{margin-top:12px;padding:12px 14px;border-radius:10px;background:#f0fdf4;color:#15803d;font-size:.875rem}
.form-status{margin-top:.75rem;padding:.8rem 1rem;border-radius:.75rem;font-size:.875rem;line-height:1.45}
.form-status.success{background:#f0fdf4;color:#15803d;border:1px solid rgba(21,128,61,.25)}
.form-status.error{background:#fef2f2;color:#b91c1c;border:1px solid rgba(185,28,28,.25)}
.form-success-state{margin-top:1rem;border-radius:1rem;overflow:hidden;border:1px solid rgba(232,114,28,.25);box-shadow:0 12px 30px rgba(0,0,0,.1)}
.form-success-header{padding:.9rem 1rem;background:#E8721C;color:#fff;font-size:.9rem;font-weight:700;text-align:center;font-family:Inter,Arial,sans-serif}
.form-success-body{padding:2rem 1.25rem 1.5rem;background:#fff;text-align:center;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem}
.form-success-icon{width:3rem;height:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:rgba(232,114,28,.12);color:#E8721C}
.form-success-body p{margin:0;font-size:.9rem;line-height:1.55;color:#222;max-width:26rem;font-family:Inter,Arial,sans-serif}
.form-success-phone{font-size:.875rem;font-weight:600;color:#E8721C;text-decoration:none;font-family:Inter,Arial,sans-serif}
.form-success-phone:hover{color:#d66512}
.site-nav.nav-scrolled{background:#111!important;box-shadow:0 2px 20px rgba(0,0,0,.3)}
.site-logo{display:inline-flex;align-items:center;line-height:0}
.site-logo img{display:block;height:40px;width:auto;max-width:min(220px,46vw)}
@media(min-width:1024px){.site-logo img{height:48px;max-width:280px}}
.site-logo--footer img{height:52px;max-width:260px}
.faq-panel{transition:all .25s ease}
/* ===== SINGLE-LINE HEADER & SERVICES MEGA MENU ===== */
.site-nav,.site-nav nav,.nav-dropdown,.services-dropdown-wrap{overflow:visible}
.nav-dropdown{position:relative}
.nav-dropdown-trigger{background:0;border:0;padding:0;cursor:pointer;font:inherit;color:inherit}
.nav-dropdown-chevron{transition:transform .2s ease;flex-shrink:0}
.nav-dropdown.is-open .nav-dropdown-chevron{transform:rotate(180deg)}
.services-mega{display:none}
@media(min-width:1024px){
.services-mega{display:block;position:absolute;top:100%;left:50%;width:min(920px,calc(100vw - 28px));padding-top:14px;z-index:120;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-36%,8px);transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
.nav-dropdown:hover .services-mega,.nav-dropdown:focus-within .services-mega,.services-mega.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-36%,0)}
}
.mega-menu-inner{display:grid;grid-template-columns:280px minmax(0,1fr);gap:0;background:#fff;border:1px solid rgba(34,34,34,.08);border-radius:20px;box-shadow:0 28px 56px -20px rgba(0,0,0,.35);overflow:hidden}
.mega-intro{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:380px;padding:30px 26px;color:#fff;overflow:hidden;isolation:isolate;background-color:#111;background-size:cover;background-position:center}
.mega-intro::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(165deg,rgba(17,17,17,.12) 0%,rgba(17,17,17,.45) 35%,rgba(17,17,17,.94) 100%)}
.mega-eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.92)}
.mega-eyebrow::before{content:"";width:22px;height:3px;border-radius:100px;background:#E8721C;flex-shrink:0}
.mega-title{margin:0 0 10px;font-family:"Playfair Display",Georgia,serif;font-size:26px;font-weight:700;line-height:1.12;letter-spacing:-.02em;max-width:13ch;color:#fff}
.mega-desc{margin:0 0 18px;font-family:Inter,Arial,sans-serif;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.82);max-width:28ch}
.mega-intro-link{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:10px 16px;border-radius:999px;background:#E8721C;color:#fff!important;font-family:Inter,Arial,sans-serif;font-size:12.5px;font-weight:700;text-decoration:none;transition:background .2s ease,transform .2s ease}
.mega-intro-link:hover{background:#d66512;transform:translateY(-1px);color:#fff!important}
.mega-panel{display:flex;flex-direction:column;padding:24px 22px 20px;background:radial-gradient(120% 80% at 100% 0%,rgba(232,114,28,.08),transparent 55%),linear-gradient(180deg,#fff 0%,#faf8f6 100%)}
.mega-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;padding:0 4px 14px;border-bottom:1px solid rgba(34,34,34,.08)}
.mega-panel-label{margin:0;font-family:Inter,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#E8721C}
.mega-panel-note{margin:0;font-family:Inter,Arial,sans-serif;font-size:12px;color:#666;white-space:nowrap}
.mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:4px;flex:1;align-content:start}
.mega-links a{position:relative;display:flex;align-items:center;gap:12px;min-width:0;padding:12px 12px 12px 10px;border-radius:12px;color:#222!important;font-family:Inter,Arial,sans-serif;font-size:13.5px;font-weight:600;line-height:1.2;text-decoration:none;text-align:left;border:1px solid transparent;background:transparent;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;white-space:nowrap}
.mega-links a .mega-link-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mega-links a .mega-arrow{flex:0 0 auto;opacity:0;transform:translateX(-6px);color:#E8721C;font-size:14px;font-weight:700;transition:opacity .2s ease,transform .2s ease}
.mega-links a:hover,.mega-links a:focus-visible{background:#fff;border-color:rgba(232,114,28,.28);box-shadow:0 8px 20px -12px rgba(0,0,0,.2);color:#222!important;transform:translateY(-1px)}
.mega-links a:hover .mega-arrow,.mega-links a:focus-visible .mega-arrow{opacity:1;transform:translateX(0)}
.mega-view-all{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;padding:13px 18px;border-radius:999px;background:#111;color:#fff!important;font-family:Inter,Arial,sans-serif;font-size:13.5px;font-weight:700;text-decoration:none;transition:background .2s ease,transform .2s ease}
.mega-view-all:hover{background:#E8721C;transform:translateY(-1px);color:#fff!important}
@media(max-width:1100px){
.mega-menu-inner{grid-template-columns:240px minmax(0,1fr)}
.mega-intro{min-height:340px;padding:24px 20px}
.mega-title{font-size:22px}
.mega-links a{font-size:12.5px;padding:11px 10px;gap:9px}
}
.vanilla-mobile-menu{border-top:1px solid rgba(255,255,255,.1);background:#111;padding:1rem 1.25rem 1.25rem}
.vanilla-mobile-menu[hidden]{display:none!important}
.vanilla-mobile-menu nav{display:flex;flex-direction:column;gap:.85rem}
.vanilla-mobile-menu nav>a{font-size:.875rem;font-weight:500;color:rgba(255,255,255,.92);text-decoration:none}
.vanilla-mobile-menu nav>a:hover{color:#E8721C}
.mobile-nav-group-btn{display:flex;align-items:center;justify-content:space-between;width:100%;background:0;border:0;padding:0;font-size:.875rem;font-weight:500;color:rgba(255,255,255,.92);cursor:pointer;font-family:inherit}
.mobile-nav-group-btn svg{transition:transform .2s ease;flex-shrink:0}
.mobile-nav-group.is-open .mobile-nav-group-btn svg{transform:rotate(180deg)}
.mobile-nav-group-panel{display:flex;flex-direction:column;gap:.65rem;padding:.65rem 0 0;border-left:1px solid rgba(255,255,255,.12);margin-top:.35rem;margin-left:.75rem}
.mobile-nav-group-panel[hidden]{display:none!important}
.mobile-nav-group-panel>a{font-size:.8125rem;color:rgba(255,255,255,.78);text-decoration:none;padding-left:.75rem}
.mobile-nav-group-panel>a:hover{color:#E8721C}
.mobile-mega-intro{position:relative;min-height:110px;margin-bottom:.35rem;margin-left:.75rem;border-radius:.75rem;overflow:hidden;background-color:#222;background-size:cover;background-position:center;padding:1rem;display:flex;flex-direction:column;justify-content:flex-end}
.mobile-mega-intro::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,17,17,.1),rgba(17,17,17,.88));z-index:0}
.mobile-mega-intro p{position:relative;z-index:1;margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#E8721C;font-family:Inter,Arial,sans-serif}
.vanilla-mobile-menu .mobile-phone{color:#fff;font-weight:600;text-align:center;padding:.5rem 0}
.vanilla-mobile-menu .mobile-cta{display:block;text-align:center;color:#fff;background:#E8721C;padding:.7rem 1.25rem;border-radius:9999px;font-weight:600;font-size:.875rem;text-decoration:none}
.vanilla-mobile-menu .mobile-cta:hover{background:#d66512;color:#fff}
.whitespace-nowrap{white-space:nowrap}
@media(max-width:768px){.section-pad{padding:56px 0}}
@media(min-width:1024px){.sticky-heading{position:sticky;top:100px;align-self:flex-start}}
.absolute{position:absolute}
.fixed{position:fixed}
.relative{position:relative}
.block{display:block}
.inline-block{display:inline-block}
.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.hidden{display:none}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.flex-1{flex:1 1 0%}
.flex-shrink-0{flex-shrink:0}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.items-stretch{align-items:stretch}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.justify-end{justify-content:flex-end}
.content-start{align-content:flex-start}
.overflow-hidden{overflow:hidden}
.bg-cover{background-size:cover}
.bg-center{background-position:center}
.bg-transparent{background-color:transparent}
.text-center{text-align:center}
.text-left{text-align:left}
.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.font-medium{font-weight:500}
.leading-none{line-height:1}
.leading-tight{line-height:1.25}
.leading-snug{line-height:1.375}
.leading-relaxed{line-height:1.625}
.break-all{word-break:break-all}
.w-full{width:100%}
.w-fit{width:fit-content}
.h-full{height:100%}
.min-h-screen{min-height:100vh}
.mx-auto{margin-left:auto;margin-right:auto}
.rounded{border-radius:.25rem}
.rounded-lg{border-radius:.5rem}
.rounded-xl{border-radius:.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-full{border-radius:9999px}
.border{border-width:1px;border-style:solid}
.border-2{border-width:2px;border-style:solid}
.border-b{border-bottom-width:1px;border-bottom-style:solid}
.border-t{border-top-width:1px;border-top-style:solid}
.shadow-sm{box-shadow:0 1px 2px rgba(0,0,0,.05)}
.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}
.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}
.transition-shadow{transition-property:box-shadow;transition-duration:.15s}
.duration-300{transition-duration:.3s}
.z-10{z-index:10}
.z-50{z-index:50}
.inset-0{inset:0}
.top-0{top:0}
.right-0{right:0}
.left-0{left:0}
.top-full{top:100%}
.top-1\/2{top:50%}
.left-1\/2{left:50%}
.-translate-x-1\/2{transform:translateX(-50%)}
.-top-3{top:-.75rem}
.-right-2{right:-.5rem}
.opacity-15{opacity:.15}
.opacity-20{opacity:.2}
.backdrop-blur-sm{backdrop-filter:blur(4px)}
.last\:border-0:last-child{border-width:0}
.last\:pb-0:last-child{padding-bottom:0}
.gap-0{gap:0}
.gap-1{gap:.25rem}
.gap-10{gap:2.5rem}
.gap-12{gap:3rem}
.gap-14{gap:3.5rem}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-5{gap:1.25rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.h-0\.5{height:.125rem}
.h-10{height:2.5rem}
.h-12{height:3rem}
.h-20{height:5rem}
.h-24{height:6rem}
.h-28{height:7rem}
.h-32{height:8rem}
.h-36{height:9rem}
.h-40{height:10rem}
.h-44{height:11rem}
.h-48{height:12rem}
.h-56{height:14rem}
.h-72{height:18rem}
.h-8{height:2rem}
.h-80{height:20rem}
.h-96{height:24rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-7xl{max-width:80rem}
.max-w-xl{max-width:36rem}
.mb-0\.5{margin-bottom:.125rem}
.mb-1{margin-bottom:.25rem}
.mb-1\.5{margin-bottom:.375rem}
.mb-10{margin-bottom:2.5rem}
.mb-12{margin-bottom:3rem}
.mb-14{margin-bottom:3.5rem}
.mb-2{margin-bottom:.5rem}
.mb-3{margin-bottom:.75rem}
.mb-4{margin-bottom:1rem}
.mb-5{margin-bottom:1.25rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.min-h-64{min-height:16rem}
.min-h-8{min-height:2rem}
.ml-1{margin-left:.25rem}
.mt-0\.5{margin-top:.125rem}
.mt-1{margin-top:.25rem}
.mt-12{margin-top:3rem}
.mt-16{margin-top:4rem}
.mt-2{margin-top:.5rem}
.mt-3{margin-top:.75rem}
.mt-4{margin-top:1rem}
.mt-5{margin-top:1.25rem}
.mt-8{margin-top:2rem}
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-8{padding:2rem}
.pb-0{padding-bottom:0}
.pb-10{padding-bottom:2.5rem}
.pb-16{padding-bottom:4rem}
.pb-20{padding-bottom:5rem}
.pb-4{padding-bottom:1rem}
.pb-5{padding-bottom:1.25rem}
.pb-6{padding-bottom:1.5rem}
.pb-8{padding-bottom:2rem}
.pl-14{padding-left:3.5rem}
.pl-16{padding-left:4rem}
.pl-4{padding-left:1rem}
.pr-4{padding-right:1rem}
.pt-1\.5{padding-top:.375rem}
.pt-24{padding-top:6rem}
.pt-28{padding-top:7rem}
.pt-4{padding-top:1rem}
.pt-8{padding-top:2rem}
.px-2{padding-left:.5rem;padding-right:.5rem}
.px-3{padding-left:.75rem;padding-right:.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}
.py-1{padding-top:.25rem;padding-bottom:.25rem}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.space-y-0 > :not([hidden]) ~ :not([hidden]){margin-top:0}
.space-y-1 > :not([hidden]) ~ :not([hidden]){margin-top:.25rem}
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]){margin-top:.375rem}
.space-y-16 > :not([hidden]) ~ :not([hidden]){margin-top:4rem}
.space-y-2 > :not([hidden]) ~ :not([hidden]){margin-top:.5rem}
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]){margin-top:.625rem}
.space-y-3 > :not([hidden]) ~ :not([hidden]){margin-top:.75rem}
.space-y-4 > :not([hidden]) ~ :not([hidden]){margin-top:1rem}
.space-y-5 > :not([hidden]) ~ :not([hidden]){margin-top:1.25rem}
.space-y-6 > :not([hidden]) ~ :not([hidden]){margin-top:1.5rem}
.space-y-8 > :not([hidden]) ~ :not([hidden]){margin-top:2rem}
.w-0\.5{width:.125rem}
.w-10{width:2.5rem}
.w-12{width:3rem}
.w-4{width:1rem}
.w-64{width:16rem}
.w-8{width:2rem}
.min-h-\[40vh\]{min-height:40vh}
.min-h-\[45vh\]{min-height:45vh}
.min-h-\[50vh\]{min-height:50vh}
.min-h-\[85vh\]{min-height:85vh}
.bg-\[\#111111\]{background-color:#111111}
.bg-\[\#111\]{background-color:#111}
.bg-\[\#E8721C\]{background-color:#E8721C}
.bg-\[\#E8721C\]\/10{background-color:rgba(232,114,28,0.1)}
.bg-\[\#E8721C\]\/20{background-color:rgba(232,114,28,0.2)}
.bg-\[\#E8721C\]\/8{background-color:rgba(232,114,28,0.08)}
.bg-\[\#f9f6f2\]{background-color:#f9f6f2}
.bg-amber-50{background-color:#fffbeb}
.bg-amber-700{background-color:#b45309}
.bg-amber-800{background-color:#92400e}
.bg-black\/20{background-color:rgba(0,0,0,0.2)}
.bg-black\/30{background-color:rgba(0,0,0,0.3)}
.bg-blue-50{background-color:#eff6ff}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-800{background-color:#1f2937}
.bg-gray-900{background-color:#111827}
.bg-green-50{background-color:#f0fdf4}
.bg-neutral-50{background-color:#fafafa}
.bg-neutral-700{background-color:#404040}
.bg-orange-50{background-color:#fff7ed}
.bg-orange-700{background-color:#c2410c}
.bg-red-50{background-color:#fef2f2}
.bg-red-800{background-color:#991b1b}
.bg-slate-50{background-color:#f8fafc}
.bg-slate-700{background-color:#334155}
.bg-stone-50{background-color:#fafaf9}
.bg-stone-700{background-color:#44403c}
.bg-white{background-color:#ffffff}
.bg-white\/10{background-color:rgba(255,255,255,0.1)}
.bg-white\/20{background-color:rgba(255,255,255,0.2)}
.bg-white\/5{background-color:rgba(255,255,255,0.05)}
.border-\[\#E8721C\]{border-color:#E8721C}
.border-\[\#E8721C\]\/30{border-color:rgba(232,114,28,0.3)}
.border-amber-200{border-color:#fde68a}
.border-gray-100{border-color:#f3f4f6}
.border-gray-200{border-color:#e5e7eb}
.border-gray-300{border-color:#d1d5db}
.border-gray-800{border-color:#1f2937}
.border-green-400{border-color:#4ade80}
.border-neutral-700{border-color:#404040}
.border-orange-200{border-color:#fed7aa}
.border-slate-800{border-color:#1e293b}
.border-stone-200{border-color:#e7e5e4}
.border-stone-300{border-color:#d6d3d1}
.border-white{border-color:#ffffff}
.border-white\/10{border-color:rgba(255,255,255,0.1)}
.fill-\[\#E8721C\]{fill:#E8721C}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.text-\[\#111111\]{color:#111111}
.text-\[\#111\]{color:#111}
.text-\[\#222\]{color:#222}
.text-\[\#E8721C\]{color:#E8721C}
.text-\[\#E8721C\]\/20{color:rgba(232,114,28,0.2)}
.text-\[\#E8721C\]\/30{color:rgba(232,114,28,0.3)}
.text-base{font-size:1rem;line-height:1.5rem}
.text-blue-700{color:#1d4ed8}
.text-gray-300{color:#d1d5db}
.text-gray-400{color:#9ca3af}
.text-gray-500{color:#6b7280}
.text-gray-600{color:#4b5563}
.text-gray-700{color:#374151}
.text-gray-800{color:#1f2937}
.text-green-700{color:#15803d}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-red-600{color:#dc2626}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-white{color:#ffffff}
.text-white\/70{color:rgba(255,255,255,0.7)}
.text-white\/80{color:rgba(255,255,255,0.8)}
.text-white\/85{color:rgba(255,255,255,0.85)}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-xs{font-size:.75rem;line-height:1rem}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}
.from-amber-100{--tw-gradient-from:#fef3c7;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-amber-500{--tw-gradient-from:#f59e0b;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-amber-600{--tw-gradient-from:#d97706;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-amber-700{--tw-gradient-from:#b45309;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-amber-800{--tw-gradient-from:#92400e;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-amber-900{--tw-gradient-from:#78350f;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-black\/70{--tw-gradient-from:rgba(0,0,0,0.7);--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-blue-700{--tw-gradient-from:#1d4ed8;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-blue-800{--tw-gradient-from:#1e40af;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-emerald-800{--tw-gradient-from:#065f46;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-fuchsia-800{--tw-gradient-from:#86198f;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-gray-100{--tw-gradient-from:#f3f4f6;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-gray-200{--tw-gradient-from:#e5e7eb;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-gray-300{--tw-gradient-from:#d1d5db;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-gray-400{--tw-gradient-from:#9ca3af;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-gray-500{--tw-gradient-from:#6b7280;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-green-700{--tw-gradient-from:#15803d;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-neutral-500{--tw-gradient-from:#737373;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-neutral-600{--tw-gradient-from:#525252;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-neutral-700{--tw-gradient-from:#404040;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-neutral-800{--tw-gradient-from:#262626;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-orange-500{--tw-gradient-from:#f97316;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-orange-600{--tw-gradient-from:#ea580c;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-orange-700{--tw-gradient-from:#c2410c;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-orange-800{--tw-gradient-from:#9a3412;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-orange-900{--tw-gradient-from:#7c2d12;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-red-700{--tw-gradient-from:#b91c1c;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-red-800{--tw-gradient-from:#991b1b;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-red-900{--tw-gradient-from:#7f1d1d;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-sky-600{--tw-gradient-from:#0284c7;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-sky-700{--tw-gradient-from:#0369a1;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-sky-800{--tw-gradient-from:#075985;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-slate-400{--tw-gradient-from:#94a3b8;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-slate-500{--tw-gradient-from:#64748b;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-slate-600{--tw-gradient-from:#475569;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-slate-700{--tw-gradient-from:#334155;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-200{--tw-gradient-from:#e7e5e4;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-400{--tw-gradient-from:#a8a29e;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-500{--tw-gradient-from:#78716c;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-600{--tw-gradient-from:#57534e;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-700{--tw-gradient-from:#44403c;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-stone-800{--tw-gradient-from:#292524;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-teal-700{--tw-gradient-from:#0f766e;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-yellow-400{--tw-gradient-from:#facc15;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-yellow-500{--tw-gradient-from:#eab308;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-yellow-600{--tw-gradient-from:#ca8a04;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-yellow-700{--tw-gradient-from:#a16207;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-yellow-800{--tw-gradient-from:#854d0e;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.from-zinc-700{--tw-gradient-from:#3f3f46;--tw-gradient-to:rgba(255,255,255,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}
.to-amber-200{--tw-gradient-to:#fde68a}
.to-amber-300{--tw-gradient-to:#fcd34d}
.to-amber-500{--tw-gradient-to:#f59e0b}
.to-amber-600{--tw-gradient-to:#d97706}
.to-amber-700{--tw-gradient-to:#b45309}
.to-amber-800{--tw-gradient-to:#92400e}
.to-amber-900{--tw-gradient-to:#78350f}
.to-amber-950{--tw-gradient-to:#451a03}
.to-blue-900{--tw-gradient-to:#1e3a8a}
.to-blue-950{--tw-gradient-to:#172554}
.to-emerald-950{--tw-gradient-to:#022c22}
.to-fuchsia-950{--tw-gradient-to:#4a044e}
.to-gray-200{--tw-gradient-to:#e5e7eb}
.to-gray-300{--tw-gradient-to:#d1d5db}
.to-gray-400{--tw-gradient-to:#9ca3af}
.to-gray-500{--tw-gradient-to:#6b7280}
.to-gray-600{--tw-gradient-to:#4b5563}
.to-gray-700{--tw-gradient-to:#374151}
.to-green-900{--tw-gradient-to:#14532d}
.to-neutral-500{--tw-gradient-to:#737373}
.to-neutral-600{--tw-gradient-to:#525252}
.to-neutral-700{--tw-gradient-to:#404040}
.to-neutral-800{--tw-gradient-to:#262626}
.to-neutral-900{--tw-gradient-to:#171717}
.to-neutral-950{--tw-gradient-to:#0a0a0a}
.to-orange-500{--tw-gradient-to:#f97316}
.to-orange-600{--tw-gradient-to:#ea580c}
.to-orange-700{--tw-gradient-to:#c2410c}
.to-orange-800{--tw-gradient-to:#9a3412}
.to-orange-900{--tw-gradient-to:#7c2d12}
.to-orange-950{--tw-gradient-to:#431407}
.to-red-600{--tw-gradient-to:#dc2626}
.to-red-700{--tw-gradient-to:#b91c1c}
.to-red-900{--tw-gradient-to:#7f1d1d}
.to-red-950{--tw-gradient-to:#450a0a}
.to-sky-600{--tw-gradient-to:#0284c7}
.to-sky-800{--tw-gradient-to:#075985}
.to-sky-900{--tw-gradient-to:#0c4a6e}
.to-slate-500{--tw-gradient-to:#64748b}
.to-slate-600{--tw-gradient-to:#475569}
.to-slate-700{--tw-gradient-to:#334155}
.to-slate-800{--tw-gradient-to:#1e293b}
.to-slate-900{--tw-gradient-to:#0f172a}
.to-stone-400{--tw-gradient-to:#a8a29e}
.to-stone-500{--tw-gradient-to:#78716c}
.to-stone-600{--tw-gradient-to:#57534e}
.to-stone-700{--tw-gradient-to:#44403c}
.to-stone-800{--tw-gradient-to:#292524}
.to-teal-900{--tw-gradient-to:#134e4a}
.to-transparent{--tw-gradient-to:transparent}
.to-yellow-500{--tw-gradient-to:#eab308}
.to-yellow-600{--tw-gradient-to:#ca8a04}
.to-yellow-700{--tw-gradient-to:#a16207}
.to-yellow-800{--tw-gradient-to:#854d0e}
.to-yellow-900{--tw-gradient-to:#713f12}
.to-yellow-950{--tw-gradient-to:#422006}
.to-zinc-900{--tw-gradient-to:#18181b}
.via-black\/20{--tw-gradient-stops:var(--tw-gradient-from),rgba(0,0,0,0.2),var(--tw-gradient-to)}
.group:hover .group-hover\:text-\[\#E8721C\]{color:#E8721C}
.group:hover .group-hover\:text-white{color:#ffffff}
.group:hover .group-hover\:text-white\/80{color:rgba(255,255,255,0.8)}
.hover\:bg-\[\#E8721C\]:hover{background-color:#E8721C}
.hover\:bg-\[\#E8721C\]\/10:hover{background-color:rgba(232,114,28,0.1)}
.hover\:bg-gray-100:hover{background-color:#f3f4f6}
.hover\:bg-gray-50:hover{background-color:#f9fafb}
.hover\:bg-orange-50:hover{background-color:#fff7ed}
.hover\:bg-orange-600:hover{background-color:#ea580c}
.hover\:bg-white\/10:hover{background-color:rgba(255,255,255,0.1)}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1)}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}
.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}
.hover\:text-\[\#E8721C\]:hover{color:#E8721C}
.hover\:text-gray-300:hover{color:#d1d5db}
.hover\:text-white:hover{color:#ffffff}
@media(min-width:640px){.sm\:block{display:block}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}}
@media(min-width:768px){.md\:flex-row{flex-direction:row}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:p-10{padding:2.5rem}.md\:p-8{padding:2rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}}
@media(min-width:1024px){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:flex-row-reverse{flex-direction:row-reverse}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:h-auto{height:auto}.lg\:hidden{display:none}.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}}

.object-cover{object-fit:cover}.top-24{top:6rem}.w-9{width:2.25rem}.h-9{height:2.25rem}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:border-\[\#E8721C\]:focus{border-color:#E8721C}.placeholder-gray-400::placeholder{color:#9ca3af}


:root {
  --orange: #E8721C;
  --black: #111111;
  --charcoal: #222222;
  --white: #FFFFFF;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Inter', sans-serif;
  color: #222222;
  background: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', serif;
}

/* Scrollbar Reviews Animation */
@keyframes scroll-x {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.reviews-track {
  animation: scroll-x 40s linear infinite;
}

.reviews-track:hover {
  animation-play-state: paused;
}

@keyframes scroll-x-fast {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.projects-track {
  animation: scroll-x 35s linear infinite;
}

.projects-track:hover {
  animation-play-state: paused;
}

/* FAQ Accordion */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.faq-answer.open {
  max-height: 500px;
}

/* Transparent nav on top */
.nav-transparent {
  background: transparent;
}

.nav-scrolled {
  background: #111111;
  box-shadow: 0 2px 20px rgba(0,0,0,0.3);
}

/* Hero overlay gradient */
.hero-overlay {
  background: linear-gradient(to right, rgba(17,17,17,0.85) 0%, rgba(17,17,17,0.6) 55%, rgba(17,17,17,0.1) 100%);
}

/* Card hover effects */
.service-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}

.service-card-image {
  position: relative;
  height: 11rem;
  width: 100%;
  overflow: hidden;
}

.service-card-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.service-card:hover .service-card-image img {
  transform: scale(1.05);
}

.service-card-image-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: flex-end;
  padding: 1rem;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
}

.feature-card-image {
  position: relative;
  height: 18rem;
  width: 100%;
  overflow: hidden;
}

.feature-card-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.group:hover .feature-card-image img {
  transform: scale(1.05);
}

.style-card-image {
  position: relative;
  height: 9rem;
  width: 100%;
  overflow: hidden;
}

.style-card-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.service-card:hover .style-card-image img {
  transform: scale(1.05);
}

/* Section spacing */
.section-pad {
  padding: 80px 0;
}

@media (max-width: 768px) {
  .section-pad {
    padding: 56px 0;
  }
}

/* Orange accent underline */
.accent-underline {
  position: relative;
  display: inline-block;
}

.accent-underline::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 60px;
  height: 4px;
  background: #E8721C;
  border-radius: 2px;
}

/* Form styles */
.form-input {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #e5e7eb;
  border-radius: 8px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #222;
  background: #fff;
  transition: border-color 0.2s;
  outline: none;
}

.form-input:focus {
  border-color: #E8721C;
}

/* CTA section */
.cta-section {
  position: relative;
  overflow: hidden;
  background: #111111;
}

.cta-section-bg {
  position: absolute;
  inset: 0;
  background-image: url('https://images.pexels.com/photos/7166565/pexels-photo-7166565.jpeg?auto=compress&cs=tinysrgb&fit=crop&h=1200&w=2200');
  background-size: cover;
  background-position: center;
  opacity: 0.28;
}

.cta-section-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(125deg, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.82) 45%, rgba(232, 114, 28, 0.18) 100%);
}

.cta-section-glow {
  position: absolute;
  width: 22rem;
  height: 22rem;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
}

.cta-section-glow--left {
  top: -5rem;
  left: -4rem;
  background: rgba(232, 114, 28, 0.22);
}

.cta-section-glow--right {
  bottom: -5rem;
  right: -4rem;
  background: rgba(232, 114, 28, 0.12);
}

.cta-section-badge {
  display: inline-block;
  background: rgba(232, 114, 28, 0.15);
  color: #f0a060;
  border: 1px solid rgba(232, 114, 28, 0.35);
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.4rem 1rem;
  border-radius: 9999px;
  margin-bottom: 1.25rem;
}

.cta-section-content h2 {
  color: #fff;
}

.cta-section-content p {
  color: rgba(255, 255, 255, 0.78);
}

.cta-trust-list {
  list-style: none;
  margin: 0 0 1.75rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.cta-trust-list li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  color: rgba(255, 255, 255, 0.88);
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
}

.cta-trust-list li::before {
  content: '';
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: #E8721C url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
}

.cta-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: #E8721C;
  color: #fff;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
  box-shadow: 0 8px 24px rgba(232, 114, 28, 0.35);
}

.cta-btn-primary:hover {
  background: #d66512;
  transform: translateY(-1px);
}

.cta-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: transparent;
  color: #fff;
  padding: 0.875rem 1.5rem;
  border-radius: 9999px;
  border: 2px solid rgba(255, 255, 255, 0.55);
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.cta-btn-secondary:hover {
  background: #fff;
  border-color: #fff;
  color: #111;
}

.cta-form-card {
  position: relative;
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.75rem;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.4);
  overflow-x: hidden;
}

.ghl-survey-embed {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.ghl-survey-embed iframe {
  border: 0;
  width: 100%;
  max-width: 100%;
  display: block;
}

@media (min-width: 768px) {
  .cta-form-card {
    padding: 2rem;
  }
}

.cta-form-card-accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #E8721C 0%, #f0a060 100%);
}

.cta-form-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.375rem;
  font-weight: 700;
  color: #111;
  margin-bottom: 0.25rem;
}

.cta-form-card .cta-form-sub {
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  color: #6b7280;
  margin-bottom: 1.5rem;
}

/* CTA blurred bg */
.cta-blur-bg {
  background: rgba(232, 114, 28, 0.12);
  backdrop-filter: blur(8px);
}

/* Breadcrumb hidden visually but present in DOM */
.breadcrumb-nav {
  display: none;
}

/* Style card image */
.style-img-placeholder {
  background: linear-gradient(135deg, #f0ede8 0%, #e8e0d5 100%);
}

/* Process step line */
.process-line {
  position: relative;
}
.process-line::before {
  content: '';
  position: absolute;
  left: 20px;
  top: 44px;
  bottom: -20px;
  width: 2px;
  background: linear-gradient(to bottom, #E8721C, #f0a060);
}
.process-line:last-child::before {
  display: none;
}

/* Timeline */
.timeline-item {
  position: relative;
  padding-left: 56px;
}
.timeline-item::before {
  content: '';
  position: absolute;
  left: 18px;
  top: 40px;
  bottom: -24px;
  width: 2px;
  background: #E8721C;
}
.timeline-item:last-child::before {
  display: none;
}

/* Sticky scroll for process */
@media (min-width: 1024px) {
  .sticky-heading {
    position: sticky;
    top: 100px;
    align-self: flex-start;
  }
}

/* Color swatches */
.color-swatch {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: inline-block;
  border: 2px solid rgba(255,255,255,0.5);
}

/* Map embed */
.map-embed {
  border-radius: 12px;
  overflow: hidden;
}

/* Gallery card */
.gallery-card {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
}
.gallery-card img {
  transition: transform 0.4s ease;
}
.gallery-card:hover img {
  transform: scale(1.05);
}

.gallery-card-image {
  position: relative;
  height: 12rem;
  width: 100%;
  overflow: hidden;
}

.gallery-card-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.gallery-card-image-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: flex-end;
  padding: 1rem;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0.2) 50%, transparent 100%);
}

.gallery-card .overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(17,17,17,0.85) 0%, transparent 100%);
  padding: 24px 20px 20px;
  transform: translateY(0);
}

/* Team card */
.team-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  transition: transform 0.3s ease;
}
.team-card:hover {
  transform: translateY(-4px);
}

/* Why choose us check icon */
.check-icon {
  width: 24px;
  height: 24px;
  background: #E8721C;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Static conversion interaction helpers */
.mobile-menu.hidden,.faq-panel.hidden,.form-success.hidden{display:none!important;}

/* Back to top */
.back-to-top{
  position:fixed;right:1.25rem;bottom:1.25rem;z-index:40;
  width:3rem;height:3rem;border:0;border-radius:9999px;
  display:flex;align-items:center;justify-content:center;
  background:#E8721C;color:#fff;cursor:pointer;
  box-shadow:0 8px 24px rgba(232,114,28,.35);
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(12px);
  transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .2s ease,box-shadow .2s ease;
}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:#d66512;box-shadow:0 10px 28px rgba(232,114,28,.45)}
.back-to-top:focus-visible{outline:2px solid #E8721C;outline-offset:3px}
@media(max-width:640px){.back-to-top{right:1rem;bottom:1rem;width:2.75rem;height:2.75rem}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}

/* How It Works timeline — services page */
.how-it-works-section .process-timeline-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1.25rem;
}

.how-it-works-section .process-step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  z-index: 1;
}

.how-it-works-section .process-step-marker {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 9999px;
  background: #E8721C;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 16px rgba(232, 114, 28, 0.35);
  margin-bottom: 1rem;
  border: 4px solid #f9f6f2;
}

.how-it-works-section .process-step-number {
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.02em;
}

.how-it-works-section .process-step-card {
  background: #fff;
  border-radius: 1rem;
  padding: 1.5rem 1.25rem;
  box-shadow: 0 4px 24px rgba(17, 17, 17, 0.06);
  border: 1px solid rgba(17, 17, 17, 0.06);
  height: 100%;
  width: 100%;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.how-it-works-section .process-step-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 36px rgba(17, 17, 17, 0.1);
  border-color: rgba(232, 114, 28, 0.2);
}

.how-it-works-section .process-step-title {
  font-family: Inter, sans-serif;
  font-size: 0.9375rem;
  font-weight: 700;
  color: #111;
  margin: 0 0 0.625rem;
  line-height: 1.35;
}

.how-it-works-section .process-step-text {
  font-family: Inter, sans-serif;
  font-size: 0.8125rem;
  color: #6b7280;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 1023px) {
  .how-it-works-section .process-timeline-steps {
    position: relative;
    padding-left: 0.25rem;
  }

  .how-it-works-section .process-step {
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
    gap: 1rem;
    padding-left: 0.5rem;
  }

  .how-it-works-section .process-step-marker {
    margin-bottom: 0;
    position: relative;
    z-index: 2;
  }

  .how-it-works-section .process-step:not(:last-child)::before {
    content: '';
    position: absolute;
    left: 1.85rem;
    top: 2.75rem;
    bottom: -1.25rem;
    width: 2px;
    background: linear-gradient(to bottom, #E8721C, #f0a060);
    z-index: 0;
  }

  .how-it-works-section .process-step-card {
    flex: 1;
    min-width: 0;
  }
}

@media (min-width: 1024px) {
  .how-it-works-section .process-timeline-steps {
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    position: relative;
    padding-top: 0.25rem;
  }

  .how-it-works-section .process-timeline-steps::before {
    content: '';
    position: absolute;
    top: 1.35rem;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, #E8721C 0%, #f0a060 50%, #E8721C 100%);
    z-index: 0;
  }

  .how-it-works-section .process-step-title {
    font-size: 1rem;
  }

  .how-it-works-section .process-step-text {
    font-size: 0.875rem;
  }

  .how-it-works-section .process-step-card {
    padding: 1.625rem 1.25rem 1.5rem;
  }
}

/* Kitchen remodel styles — alternating image/text rows */
.kitchen-styles-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.kitchen-style-row {
  padding: 2.5rem 0;
  border-bottom: 1px solid #f3f4f6;
}

.kitchen-style-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.kitchen-style-row:first-child {
  padding-top: 0;
}

.kitchen-style-media {
  width: 100%;
  height: 16rem;
  min-height: 16rem;
}

.kitchen-style-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.kitchen-style-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.kitchen-style-eyebrow {
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #E8721C;
  margin: 0 0 0.5rem;
}

@media (min-width: 1024px) {
  .kitchen-style-row {
    padding: 3rem 0;
  }

  .kitchen-style-media {
    height: 18rem;
    min-height: 18rem;
  }
}

/* Style CTA — split card with dark image panel */
.style-cta-shell {
  display: grid;
  grid-template-columns: 1fr;
  border-radius: 1.5rem;
  overflow: hidden;
  box-shadow: 0 28px 60px rgba(17, 17, 17, 0.14);
  border: 1px solid rgba(17, 17, 17, 0.06);
}

@media (min-width: 1024px) {
  .style-cta-shell {
    grid-template-columns: 42% 58%;
    min-height: 36rem;
  }
}

.style-cta-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 22rem;
  overflow: hidden;
}

.style-cta-panel-bg {
  position: absolute;
  inset: 0;
  background-image: url('https://images.pexels.com/photos/2062431/pexels-photo-2062431.jpeg?auto=compress&cs=tinysrgb&fit=crop&h=1200&w=900');
  background-size: cover;
  background-position: center;
}

.style-cta-panel-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(17, 17, 17, 0.94) 0%, rgba(17, 17, 17, 0.72) 45%, rgba(17, 17, 17, 0.35) 100%);
}

.style-cta-panel-inner {
  position: relative;
  z-index: 1;
  padding: 2rem 1.75rem;
}

@media (min-width: 1024px) {
  .style-cta-panel-inner {
    padding: 2.5rem 2rem;
  }
}

.style-cta-eyebrow {
  display: inline-block;
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #f0a060;
  margin-bottom: 0.75rem;
}

.style-cta-heading {
  font-family: 'Playfair Display', serif;
  font-size: 1.75rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  margin: 0 0 0.875rem;
}

@media (min-width: 768px) {
  .style-cta-heading {
    font-size: 2rem;
  }
}

.style-cta-lead {
  font-family: Inter, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.82);
  margin: 0 0 1.5rem;
}

.style-cta-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.style-cta-stat {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.75rem;
  padding: 0.75rem 0.5rem;
  text-align: center;
}

.style-cta-stat strong {
  display: block;
  font-family: Inter, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  color: #E8721C;
  line-height: 1.2;
}

.style-cta-stat span {
  display: block;
  margin-top: 0.2rem;
  font-family: Inter, sans-serif;
  font-size: 0.6875rem;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.3;
}

.style-cta-phone {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  background: #E8721C;
  color: #fff;
  text-decoration: none;
  padding: 0.875rem 1.25rem;
  border-radius: 9999px;
  transition: background 0.2s ease, transform 0.2s ease;
  box-shadow: 0 10px 28px rgba(232, 114, 28, 0.4);
}

.style-cta-phone:hover {
  background: #d66512;
  transform: translateY(-1px);
}

.style-cta-phone span {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-family: Inter, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;
}

.style-cta-phone em {
  font-style: normal;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 0.9;
  margin-bottom: 0.1rem;
}

.style-cta-form-wrap {
  background: #fff;
  padding: 2rem 1.75rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (min-width: 768px) {
  .style-cta-form-wrap {
    padding: 2.5rem 2.25rem;
  }
}

.style-cta-form-head {
  margin-bottom: 1.5rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid #f3f4f6;
}

.style-cta-form-head h3 {
  font-family: 'Playfair Display', serif;
  font-size: 1.375rem;
  font-weight: 700;
  color: #111;
  margin: 0 0 0.35rem;
}

.style-cta-form-head p {
  font-family: Inter, sans-serif;
  font-size: 0.875rem;
  color: #6b7280;
  margin: 0;
}

.style-cta-form-wrap label {
  font-family: Inter, sans-serif;
}

.style-cta-form-note {
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  color: #9ca3af;
  margin: 0;
}

.style-cta-submit {
  display: block;
  width: 100%;
  background: #111;
  color: #fff;
  padding: 0.9375rem 1.25rem;
  border: 0;
  border-radius: 0.75rem;
  font-family: Inter, sans-serif;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.style-cta-submit:hover {
  background: #E8721C;
  transform: translateY(-1px);
}
