@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root { --jax-blue:#03357a; --jax-blue-dark:#022654; --black:#000; --white:#fff; --sand:#f4f1eb; --line:#d8dde5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:#10141a; background:#fff; font-family:'Inter',Arial,sans-serif; line-height:1.7; }
a { color:inherit; }
.topbar { background:#000; color:#fff; padding:.45rem 0; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; }
.topbar a { color:#fff; text-decoration:none; font-weight:700; }
.site-header { background:rgba(255,255,255,.97); border-bottom:1px solid rgba(3,53,122,.12); backdrop-filter:blur(12px); }
.navbar-brand img { object-fit:cover; }
.navbar-brand span { line-height:.9; font-family:'Barlow Condensed',Impact,sans-serif; letter-spacing:.04em; color:#000; font-size:1.32rem; }
.navbar-brand small { display:block; color:var(--jax-blue); font-size:.72rem; letter-spacing:.22em; margin-top:.38rem; }
.nav-link { color:#1a2430; font-size:.93rem; font-weight:600; padding:.8rem 1rem !important; }
.nav-link:hover,.nav-link:focus { color:var(--jax-blue); }
.btn { border-radius:0; font-weight:700; padding:.78rem 1.25rem; }
.btn.btn-brand {
  position:relative;
  overflow:hidden;
  border:1px solid #174f9e;
  border-radius:.55rem;
  background:linear-gradient(135deg,#0a4fa9 0%,var(--jax-blue) 58%,var(--jax-blue-dark) 100%);
  color:#fff;
  letter-spacing:.035em;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
    .btn.btn-brand::after {
        content: '→';
        display: inline-block;
        margin-left: .65rem;
        transition: transform .18s ease;
    }
.btn.btn-brand:hover,.btn.btn-brand:focus-visible {
  border-color:#000;
  background:linear-gradient(135deg,#161616,#000);
  color:#fff;
  transform:translateY(3px);
}
.btn.btn-brand:hover::after,.btn.btn-brand:focus-visible::after { transform:translateX(4px); }
.btn.btn-brand:focus-visible { outline:3px solid rgba(10,79,169,.35); outline-offset:4px; }
.btn.btn-brand:active { box-shadow:0 2px 0 #011a3b; transform:translateY(6px); }
.btn-outline-light { border-width:2px; }
.hero { min-height:710px; position:relative; overflow:hidden; color:#fff; background:#111 url('../Images/hero-flooring.png') center/cover no-repeat; }
.hero-scrim { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.62) 38%,rgba(0,0,0,.12) 72%); }
.hero-copy { max-width:720px; padding:3rem 0; }
.eyebrow { color:var(--jax-blue); font-size:.78rem; line-height:1.3; text-transform:uppercase; letter-spacing:.18em; font-weight:800; margin-bottom:1rem; }
.hero h1,.page-hero h1,.location-hero h1,.display-heading,.visit-panel h2,.local-process h2 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; line-height:.92; letter-spacing:-.015em; font-weight:800; }
.hero h1 { font-size:clamp(3.8rem,7.3vw,7.4rem); max-width:850px; }
.hero-lead { max-width:660px; font-size:1.15rem; color:rgba(255,255,255,.86); line-height:1.65; }
.trust-band { background:var(--jax-blue); color:#fff; }
.trust-item { padding:1.65rem 2rem; display:flex; align-items:center; justify-content:center; gap:1rem; border-right:1px solid rgba(255,255,255,.22); }
.trust-item:last-child { border-right:0; }
.trust-item strong { font-family:'Barlow Condensed',Impact,sans-serif; font-size:2rem; letter-spacing:.03em; }
.trust-item span { color:rgba(255,255,255,.72); font-size:.75rem; text-transform:uppercase; letter-spacing:.1em; }
.section-pad { padding:7.5rem 0; }
.section-pad-blue {
    background: var(--jax-blue);
    color: #fff;
}
.display-heading { font-size:clamp(3rem,5vw,5.2rem); }
.lead-copy { font-size:1.28rem; font-weight:500; line-height:1.65; color:#182234; }
.lead-copy-white {
    color: #ffffff;
}
.products-section { background:var(--sand); }
.product-card { background:#fff; border-top:5px solid var(--jax-blue); overflow:hidden; transition:transform .25s ease,box-shadow .25s ease; }
.product-card:hover { transform:translateY(-6px); box-shadow:0 20px 45px rgba(0,0,0,.08); }
.product-card>img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.product-card-body { padding:1.65rem 2rem 2rem; }
.product-card-body>span { color:var(--jax-blue); font-weight:800; font-size:.78rem; letter-spacing:.15em; }
.product-card h3 { font-family:'Barlow Condensed',Impact,sans-serif; font-size:2rem; text-transform:uppercase; margin:1.6rem 0 .8rem; }
.product-card p { color:#5d6470; font-size:.93rem; margin:0; }
.product-card-link { display:inline-block; margin-top:1.25rem; color:var(--jax-blue); font-size:.86rem; font-weight:800; text-decoration:none; }
.brands-section { background:#fff; }
.brand-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.brand-tile { min-height:105px; display:flex; align-items:center; justify-content:center; text-align:center; padding:1.2rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--jax-blue); font-family:'Barlow Condensed',Impact,sans-serif; font-size:1.45rem; font-weight:800; text-transform:uppercase; text-decoration:none; transition:.2s ease; }
.brand-tile:hover { background:var(--jax-blue); color:#fff; }
.markets-section { background:linear-gradient(135deg,#05070a 0%,#091b34 100%); }
.market-heading { max-width:850px; margin:0 auto; }
.market-heading>p:last-child { color:rgba(255,255,255,.65); }
.market-card { background:#fff; padding:3rem; border-top:6px solid #75a8ef; }
.market-card>span { color:var(--jax-blue); font-weight:800; }
.market-card h3 { font-family:'Barlow Condensed',Impact,sans-serif; font-size:3rem; text-transform:uppercase; margin:1.5rem 0 .8rem; }
.market-card ul,.audience-mini ul { padding-left:1.2rem; margin:1.5rem 0 0; }
.market-card li,.audience-mini li { margin:.65rem 0; }
.process-section { background:#070b11; }
.process-list { list-style:none; counter-reset:steps; margin:0; padding:0; }
.process-list li { position:relative; border-top:1px solid rgba(255,255,255,.2); padding:1.5rem 0 1.5rem 4.2rem; color:#fff; counter-increment:steps; }
.process-list li::before { content:'0' counter(steps); position:absolute; left:0; top:1.4rem; font-family:'Barlow Condensed',Impact,sans-serif; font-size:1.6rem; color:#75a8ef; }
.process-list strong,.process-list span { display:block; }
.process-list strong { font-size:1.04rem; margin-bottom:.2rem; }
.process-list span { color:rgba(255,255,255,.58); font-size:.9rem; }
.area-preview-copy { max-width:720px; color:#5b6370; font-size:1.05rem; }
.reviews-section { background:#f7f9fc; }
.reviews-heading { max-width:850px; margin-inline:auto; }
.visit-cta { padding:0 0 5.5rem; }
.visit-panel { background:var(--jax-blue); color:#fff; padding:4rem; display:flex; align-items:center; justify-content:space-between; gap:3rem; box-shadow:18px 18px 0 #000; }
.visit-panel h2 { font-size:clamp(2.8rem,5vw,5rem); }
.visit-panel p:last-child { color:rgba(255,255,255,.72); margin-bottom:0; }
.page-hero,.location-hero { color:#fff; background:linear-gradient(110deg,rgba(0,0,0,.91),rgba(3,53,122,.82)),url('../Images/hero-flooring.png') center/cover; }
.page-hero { padding:8rem 0; }
.page-hero h1,.location-hero h1 { font-size:clamp(3.5rem,7vw,7rem); max-width:900px; }
.page-hero>div>p:last-child,.location-hero>div>p { max-width:650px; color:rgba(255,255,255,.75); font-size:1.1rem; }
.area-card { display:flex; gap:2rem; min-height:245px; background:var(--sand); padding:2rem; text-decoration:none; border-bottom:5px solid transparent; transition:.25s ease; }
.area-card:hover { background:#fff; border-color:var(--jax-blue); box-shadow:0 18px 45px rgba(3,53,122,.12); transform:translateY(-4px); }
.area-number { color:var(--jax-blue); font-family:'Barlow Condensed',Impact,sans-serif; font-size:2.2rem; }
.area-card p { color:#667080; font-size:.78rem; text-transform:uppercase; letter-spacing:.12em; margin:0 0 1rem; }
.area-card h2 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; font-size:2.5rem; }
.area-link { display:block; margin-top:3rem; font-weight:700; color:var(--jax-blue); font-size:.9rem; }
.location-hero { padding:5rem 0 7.5rem; }
.breadcrumb { margin-bottom:5rem; }
.breadcrumb a { color:rgba(255,255,255,.72); }
.breadcrumb-item.active { color:#fff; }
.breadcrumb-item+.breadcrumb-item::before { color:rgba(255,255,255,.5); }
.project-panel { padding:2.5rem; background:var(--sand); border-top:5px solid var(--jax-blue); position:sticky; top:130px; }
.project-panel ul { list-style:none; padding:0; margin:1.6rem 0 2rem; }
.project-panel li { border-bottom:1px solid #d8d4cd; padding:.8rem 0; font-weight:600; }
.project-panel li::before { content:'-'; color:var(--jax-blue); margin-right:.7rem; }
.project-panel a { color:var(--jax-blue); font-weight:700; }
.local-process { background:var(--jax-blue); color:#fff; padding:5.5rem 0; }
.local-process h2 { font-size:3.8rem; }
.local-step { height:100%; border-left:1px solid rgba(255,255,255,.3); padding-left:2rem; }
.local-step h3 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; font-size:2rem; }
.local-step p { color:rgba(255,255,255,.68); }
.local-catalog { background:var(--sand); }
.product-chip-list { display:flex; flex-wrap:wrap; gap:.65rem; }
.product-chip-list span,.product-chip-list a { background:#fff; border-left:4px solid var(--jax-blue); padding:.65rem .9rem; font-weight:700; }
.product-chip-list a { color:#10141a; text-decoration:none; transition:.2s ease; }
.product-chip-list a:hover,.product-chip-list a:focus { background:var(--jax-blue); color:#fff; transform:translateY(-2px); }
.local-brand-list { display:flex; flex-wrap:wrap; gap:.65rem; }
.local-brand-list a { padding:.7rem .95rem; background:#fff; border:1px solid var(--line); color:var(--jax-blue); font-weight:800; text-decoration:none; transition:.2s ease; }
.local-brand-list a:hover,.local-brand-list a:focus { background:var(--jax-blue); border-color:var(--jax-blue); color:#fff; }
.local-link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.local-link-grid.compact { grid-template-columns:repeat(4,minmax(0,1fr)); }
.local-catalog-link { display:flex; min-height:245px; flex-direction:column; padding:1.6rem; background:#fff; border-top:5px solid var(--jax-blue); color:#10141a; text-decoration:none; transition:.22s ease; }
.local-catalog-link:hover,.local-catalog-link:focus { color:#10141a; transform:translateY(-4px); box-shadow:0 18px 40px rgba(3,53,122,.13); }
.local-catalog-link span { color:#667080; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.local-catalog-link strong { margin-top:1rem; font-family:'Barlow Condensed',Impact,sans-serif; font-size:2rem; line-height:1; text-transform:uppercase; }
.local-catalog-link small { display:block; margin-top:.85rem; color:#667080; line-height:1.55; }
.local-catalog-link b { margin-top:auto; padding-top:1.35rem; color:var(--jax-blue); font-size:.84rem; }
.local-product-image { margin:0 0 2.5rem; background:#f3f5f8; }
.local-product-image img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; }
.local-product-image figcaption { padding:.7rem 1rem; color:#687181; font-size:.78rem; }
.product-area-links { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1rem; }
.product-area-links a { padding:.55rem .75rem; background:var(--sand); color:var(--jax-blue); font-size:.84rem; font-weight:800; text-decoration:none; }
.product-area-links a:hover,.product-area-links a:focus { background:var(--jax-blue); color:#fff; }
.audience-mini { background:#fff; padding:2.5rem; border-top:5px solid var(--jax-blue); }
.audience-mini h3 { font-family:'Barlow Condensed',Impact,sans-serif; font-size:2.2rem; text-transform:uppercase; }
.brand-hero { color:#fff; background:linear-gradient(120deg,#02070e 0%,#03357a 72%,#0a4fa9 100%); padding:5rem 0 7.5rem; }
.brand-hero h1,.hub-card h2,.detail-card h2,.guide-card h2 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; line-height:1; }
.brand-hero h1 { font-size:clamp(4rem,8vw,7.5rem); }
.brand-hero>div>p:last-child { max-width:760px; color:rgba(255,255,255,.76); font-size:1.15rem; }
.hub-card { display:block; padding:2rem; background:var(--sand); color:#10141a; text-decoration:none; border-top:5px solid var(--jax-blue); transition:.25s ease; }
.hub-card:hover { background:#fff; color:#10141a; transform:translateY(-5px); box-shadow:0 18px 45px rgba(3,53,122,.12); }
.hub-card>span { color:var(--jax-blue); font-weight:800; }
.hub-card>p:first-of-type { margin:2rem 0 .4rem; color:#687181; font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; font-weight:700; }
.hub-card h2 { font-size:2.65rem; }
.hub-card b { display:block; margin-top:2rem; color:var(--jax-blue); }
.category-list { display:flex; flex-wrap:wrap; gap:.75rem; }
.category-list span { padding:.75rem 1rem; background:var(--sand); border-left:4px solid var(--jax-blue); font-weight:700; }
.check-list { list-style:none; padding:0; }
.check-list li { padding:.85rem 0; border-bottom:1px solid var(--line); font-weight:600; }
.check-list li::before { content:'✓'; margin-right:.8rem; color:var(--jax-blue); }
.source-note { color:#667080; font-size:.9rem; border-left:3px solid var(--line); padding-left:1rem; }
.product-guide { border-top:1px solid var(--line); }
.guide-card { display:grid; grid-template-columns:90px minmax(0,1fr); gap:2.5rem; padding:4rem 0; border-bottom:1px solid var(--line); }
.guide-number { font-family:'Barlow Condensed',Impact,sans-serif; color:var(--jax-blue); font-size:2.5rem; font-weight:800; }
.guide-card h2 { font-size:clamp(3rem,6vw,5.5rem); }
.guide-card h3 { font-family:'Barlow Condensed',Impact,sans-serif; text-transform:uppercase; font-size:1.6rem; }
.product-example { margin:0 0 2rem; }
.product-example img { display:block; width:100%; aspect-ratio:16/7; object-fit:cover; background:#e9edf2; }
.product-example figcaption { padding:.55rem .75rem; background:#f3f5f8; color:#687181; font-size:.76rem; }
.product-example figcaption a { color:var(--jax-blue); font-weight:700; }
.detail-card { padding:2.5rem; background:#fff; border-top:5px solid var(--jax-blue); box-shadow:0 12px 35px rgba(3,53,122,.08); }
.detail-card h2 { font-size:2.5rem; }
.contact-hero { color:#fff; background:linear-gradient(115deg,#02070e 0%,#03357a 70%,#0a4fa9 100%); padding:7rem 0; }
.contact-hero h1 { font-family:'Barlow Condensed',Impact,sans-serif; font-size:clamp(4rem,8vw,7.5rem); font-weight:800; line-height:.92; text-transform:uppercase; }
.contact-hero>div>p:last-child { max-width:700px; color:rgba(255,255,255,.75); font-size:1.15rem; }
.contact-section { background:#f7f9fc; }
.contact-form { margin-top:2.5rem; padding:3rem; background:#fff; border-top:6px solid var(--jax-blue); box-shadow:0 18px 45px rgba(3,53,122,.1); }
.contact-form .form-label { color:#172337; font-weight:800; }
.contact-form .form-control { min-height:58px; border:1px solid #b9c1cd; border-radius:0; font-size:1rem; }
.contact-form .form-control:focus { border-color:var(--jax-blue); box-shadow:0 0 0 .25rem rgba(3,53,122,.15); }
.form-note,.form-status { color:#667080; font-size:.84rem; }
.form-status { min-height:1.5rem; margin:1rem 0 0; }
.form-status-success { color:#176b3a; font-weight:700; }
.form-status-error { color:#a12525; font-weight:700; }
.contact-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.contact-details { padding:3rem; background:#05070a; color:#fff; box-shadow:14px 14px 0 var(--jax-blue); }
.contact-details h2 { font-family:'Barlow Condensed',Impact,sans-serif; font-size:3.4rem; font-weight:800; line-height:.95; text-transform:uppercase; }
.contact-details>p:last-child { color:rgba(255,255,255,.62); }
.contact-detail-item { padding:1.5rem 0; border-top:1px solid rgba(255,255,255,.18); }
.contact-detail-item span { display:block; color:#75a8ef; font-size:.72rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.contact-detail-item a { display:inline-block; margin-top:.35rem; color:#fff; font-size:1.12rem; font-weight:700; text-decoration:none; }
.location-depth { background:#f7f9fc; }
.nearby-areas { border-top:1px solid var(--line); }
.nearby-area-link { display:flex; min-height:190px; height:100%; flex-direction:column; padding:1.6rem; background:var(--sand); border-top:5px solid var(--jax-blue); color:#10141a; text-decoration:none; transition:.25s ease; }
.nearby-area-link:hover,.nearby-area-link:focus { background:#fff; color:#10141a; transform:translateY(-4px); box-shadow:0 18px 40px rgba(3,53,122,.12); }
.nearby-area-link span { color:#667080; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.nearby-area-link strong { margin-top:1rem; font-family:'Barlow Condensed',Impact,sans-serif; font-size:2rem; line-height:1; text-transform:uppercase; }
.nearby-area-link b { margin-top:auto; padding-top:1.5rem; color:var(--jax-blue); font-size:.85rem; }
.all-areas-link { color:var(--jax-blue); font-weight:800; }
.site-footer { background:#05070a; color:#fff; }
.footer-brand { font-family:'Barlow Condensed',Impact,sans-serif; font-size:2.2rem; font-weight:800; }
.footer-brand span { color:#75a8ef; }
.site-footer p { color:rgba(255,255,255,.58); }
.footer-contact { color:#fff; text-decoration:none; line-height:2; }
.footer-heading { font-size:.78rem; text-transform:uppercase; letter-spacing:.18em; color:#75a8ef; }
.footer-links,.footer-area-grid { list-style:none; padding:0; margin:1.3rem 0 0; }
.footer-links li { margin:.6rem 0; }
.footer-links a,.footer-area-grid a { color:rgba(255,255,255,.72); text-decoration:none; }
.footer-links a:hover,.footer-area-grid a:hover { color:#fff; }
.footer-area-grid { display:grid; grid-template-columns:1fr 1fr; gap:.65rem 1rem; }
.footer-bottom { border-top:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.4); font-size:.78rem; margin-top:3.5rem; padding-top:1.5rem; }
.validation-summary-valid {
    display: none;
}

@media (max-width:991.98px) {
  .site-header { position:relative !important; }
  .hero { min-height:680px; background-position:60% center; }
  .hero-scrim { background:rgba(0,0,0,.68); }
  .navbar-collapse { padding:1rem 0; }
  .nav-link { padding:.55rem 0 !important; }
  .section-pad { padding:5rem 0; }
  .visit-panel { align-items:flex-start; flex-direction:column; padding:3rem; }
  .project-panel { position:static; }
  .brand-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .local-link-grid,.local-link-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767.98px) {
  .topbar span { display:none; }
  .topbar .container { justify-content:center !important; }
  .hero { min-height:640px; }
  .hero h1 { font-size:3.85rem; }
  .trust-item { border-right:0; border-bottom:1px solid rgba(255,255,255,.2); justify-content:flex-start; }
  .visit-panel { box-shadow:10px 10px 0 #000; padding:2rem; }
  .area-card { min-height:220px; }
  .location-hero { padding:3rem 0 5rem; }
  .breadcrumb { margin-bottom:3rem; font-size:.8rem; }
  .brand-grid { grid-template-columns:1fr; }
  .local-link-grid,.local-link-grid.compact { grid-template-columns:1fr; }
  .market-card { padding:2rem; }
  .guide-card { grid-template-columns:1fr; gap:1rem; }
  .product-example img { aspect-ratio:4/3; }
  .contact-form,.contact-details { padding:2rem; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none !important; } }
