/* Test-wide visual system: editorial, architectural, and function-safe. */
:root {
  --st-ink:#111827;
  --st-ink-soft:#344054;
  --st-orange:#ef512c;
  --st-orange-dark:#c93d20;
  --st-paper:#f5f1ea;
  --st-sand:#ede1d3;
  --st-white:#ffffff;
  --st-muted:#667085;
  --st-line:#d7d9dc;
  --st-line-strong:#aeb4bd;
  --st-navy:#111827;
  --st-shadow:0 22px 60px rgba(17,24,39,.09);
  --st-radius:18px;
}

/* Ref project manager ----------------------------------------------------- */
.project-admin-page{min-height:calc(100svh - 74px);padding:70px 0 110px;background:#f5f3ef;color:#101827}
.project-admin-shell{max-width:1240px}
.project-admin-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:32px;font-size:.8rem;color:#667085}
.project-admin-breadcrumb a{color:#e8542c;font-weight:700;text-decoration:none}
.project-admin-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:38px}
.project-admin-intro h1{margin:18px 0 10px;font-family:var(--font-head);font-size:clamp(2.8rem,5vw,5rem);line-height:.95;letter-spacing:-.055em}
.project-admin-intro p{max-width:680px;margin:0;color:#566174;font-size:1rem;line-height:1.7}
.project-admin-public-link{flex:0 0 auto;color:#101827;font-weight:700;text-underline-offset:4px}
.project-admin-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-bottom:18px;padding:19px 22px;border:1px solid #d5d9e0;background:#fff}
.project-admin-toolbar>div{display:grid;gap:4px}.project-admin-toolbar strong{font-size:.95rem}.project-admin-toolbar span{color:#667085;font-size:.82rem}
.project-primary-btn,.project-danger-btn,.project-file-button{min-height:46px;border:0;border-radius:10px;padding:0 20px;font:700 .84rem/1 var(--font-body);cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.project-primary-btn{background:#ef542f;color:#fff;box-shadow:0 8px 18px rgba(210,61,29,.16)}
.project-primary-btn:hover{background:#dc4523;transform:translateY(-1px)}
.project-primary-btn:active,.project-danger-btn:active{transform:translateY(1px)}
.project-primary-btn:focus-visible,.project-danger-btn:focus-visible,.project-file-button:focus-within,.project-admin-card:focus-visible,.project-editor-close:focus-visible{outline:3px solid rgba(239,84,47,.28);outline-offset:3px}
.project-primary-btn:disabled,.project-danger-btn:disabled{opacity:.55;cursor:wait;transform:none}
.project-admin-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);gap:18px;align-items:start}
.project-admin-list-panel,.project-editor{border:1px solid #d5d9e0;background:#fff}
.project-admin-list-panel{position:sticky;top:96px;max-height:calc(100svh - 120px);overflow:auto}
.project-admin-list-head,.project-editor-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid #e2e5ea}
.project-admin-list-head h2,.project-editor-head h2{margin:0;font-family:var(--font-head);font-size:1.35rem;letter-spacing:-.03em}
.project-admin-list-head button,.project-editor-close{border:0;background:transparent;color:#e8542c;font-weight:700;cursor:pointer}
.project-admin-status{margin:18px;padding:16px;border-left:3px solid #98a2b3;background:#f6f7f8;color:#566174;font-size:.86rem;line-height:1.5}
.project-admin-status[data-kind="error"]{border-color:#c7372c;background:#fff3f1;color:#8d2921}.project-admin-status[data-kind="empty"]{border-color:#ef542f;background:#fff8f4}
.project-admin-list{display:grid}.project-admin-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;width:100%;padding:14px 16px;border:0;border-bottom:1px solid #e8e9ec;background:#fff;color:#101827;text-align:left;cursor:pointer;transition:background .2s ease}
.project-admin-card:hover{background:#fff8f4}.project-admin-card img{width:86px;height:70px;border-radius:8px;object-fit:cover;background:#eeeae4}
.project-admin-card-copy{display:grid;align-content:center;gap:5px;min-width:0}.project-admin-card-copy strong,.project-admin-card-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-admin-card-copy strong{font-size:.88rem}.project-admin-card-copy small{color:#667085;font-size:.74rem}
.project-admin-card-copy>span{display:flex;align-items:center;gap:7px}.project-admin-card-copy b,.project-admin-card-copy em{padding:3px 6px;border-radius:4px;background:#edf0f3;color:#596374;font:600 .62rem/1 var(--font-body);font-style:normal}.project-admin-card-copy b[data-published="true"]{background:#e9f6ee;color:#167447}.project-admin-card-copy em{background:#fff0e8;color:#c94120}.project-admin-card-copy time{margin-left:auto;color:#8a93a1;font-size:.62rem}
.project-editor{scroll-margin-top:96px}.project-editor-head{padding:24px 28px}.project-editor-mode{display:block;margin-bottom:5px;color:#ef542f;font:600 .67rem/1 var(--font-mono);letter-spacing:.13em;text-transform:uppercase}
#projectForm{padding:28px}.project-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-field{display:grid;gap:8px}.project-field-wide{grid-column:1/-1}.project-field>span,.project-photo-fieldset legend,.project-order-field>span{color:#273244;font:600 .72rem/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.project-field b,.project-photo-fieldset b{color:#e8542c}
.project-field input,.project-field textarea,.project-field select,.project-order-field input{width:100%;border:1px solid #b9c0cb;border-radius:9px;background:#fff;padding:12px 13px;color:#101827;font:500 .91rem/1.4 var(--font-body);transition:border-color .2s ease,box-shadow .2s ease}.project-field textarea{resize:vertical;min-height:130px}.project-field input:focus,.project-field textarea:focus,.project-field select:focus,.project-order-field input:focus{outline:0;border-color:#ef542f;box-shadow:0 0 0 3px rgba(239,84,47,.12)}
.project-field-help,.project-order-field small{display:block;margin:0;color:#667085;font:400 .73rem/1.45 var(--font-body);letter-spacing:0;text-transform:none}
.project-products-fieldset{margin:0;padding:16px;border:1px solid #d5d9e0;border-radius:9px}.project-products-fieldset legend{padding:0 7px;color:#273244;font:600 .72rem/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.project-product-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10px}.project-product-options label{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 12px;border:1px solid #d5d9e0;border-radius:8px;background:#fff;color:#101827;font-size:.82rem;font-weight:600;cursor:pointer}.project-product-options label:has(input:checked){border-color:#ef542f;background:#fff7f3;color:#b9361b}.project-product-options input{width:18px;height:18px;margin:0;accent-color:#ef542f;flex:0 0 auto}
.project-photo-fieldset{margin:28px 0 0;padding:20px;border:1px solid #d5d9e0}.project-photo-fieldset legend{padding:0 8px}.project-photo-grid{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:22px}.project-photo-preview{position:relative;min-height:180px;border-radius:10px;overflow:hidden;background:#eeeae4}.project-photo-preview img{display:block;width:100%;height:100%;min-height:180px;object-fit:cover}.project-photo-preview span{position:absolute;right:10px;bottom:10px;padding:5px 8px;border-radius:5px;background:rgba(16,24,39,.82);color:#fff;font-size:.68rem}
.project-photo-controls{display:grid;align-content:start;gap:12px}.project-file-button{display:flex;align-items:center;justify-content:center;width:max-content;background:#101827;color:#fff}.project-file-button:hover{background:#263246}.project-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.project-photo-controls>p{margin:0;color:#667085;font-size:.76rem;line-height:1.5}
.project-admin-intro .tag-pill{width:max-content!important;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important}
.project-file-button,.project-file-button:hover,.project-file-button:focus-within{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important}
.project-publish-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) 140px;gap:12px;margin-top:24px}.project-publish-row>label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #d5d9e0;border-radius:9px}.project-publish-row input[type="checkbox"]{width:18px;height:18px;margin:2px 0 0;accent-color:#ef542f}.project-publish-row label>span{display:grid;gap:4px}.project-publish-row strong{font-size:.82rem}.project-publish-row small{color:#667085;font-size:.7rem;line-height:1.4}.project-order-field{display:grid!important;gap:7px}.project-order-field input{padding:8px}
.project-form-error{margin-top:18px;border-left:3px solid #c7372c;background:#fff0ee;padding:13px 15px;color:#8d2921;font-weight:600;font-size:.82rem}.project-editor-actions{display:flex;align-items:center;gap:10px;margin-top:22px}.project-danger-btn{background:#c7372c;color:#fff}.project-danger-btn:hover{background:#a92e25}.project-delete-confirm{margin-top:16px;border:1px solid #e1a39d;background:#fff5f3;padding:17px}.project-delete-confirm p{margin:0 0 13px;color:#6f2924;font-size:.83rem;line-height:1.5}.project-delete-confirm>div{display:flex;gap:9px}.project-delete-confirm button:not(.project-danger-btn){border:1px solid #b9c0cb;border-radius:9px;background:#fff;padding:0 16px;font-weight:700;cursor:pointer}
@media(max-width:900px){.project-admin-page{padding:50px 0 90px}.project-admin-intro{align-items:flex-start;flex-direction:column}.project-admin-layout{grid-template-columns:1fr}.project-admin-list-panel{position:static;max-height:none}.project-admin-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-admin-card{border-right:1px solid #e8e9ec}.project-photo-grid{grid-template-columns:1fr}.project-photo-preview{max-height:340px}.project-publish-row{grid-template-columns:1fr 1fr}.project-order-field{grid-column:1/-1}}
@media(max-width:620px){.project-admin-page{padding-top:34px}.project-admin-breadcrumb{margin-bottom:22px}.project-admin-intro{gap:18px;margin-bottom:26px}.project-admin-intro h1{font-size:2.6rem}.project-admin-toolbar{align-items:stretch;flex-direction:column}.project-admin-toolbar .project-primary-btn{width:100%}.project-admin-list{grid-template-columns:1fr}.project-fields-grid,.project-publish-row,.project-product-options{grid-template-columns:1fr}.project-field-wide,.project-order-field{grid-column:auto}.project-editor-head,#projectForm{padding:20px 17px}.project-photo-fieldset{padding:14px}.project-file-button{width:100%}.project-editor-actions{align-items:stretch;flex-direction:column}.project-editor-actions button{width:100%}.project-delete-confirm>div{flex-direction:column}.project-delete-confirm button{min-height:44px}}

html { scroll-behavior:smooth; background:var(--st-white); }
body { margin:0; background:var(--st-white); color:var(--st-ink); overflow-x:hidden; }
body,button,input,select,textarea { -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
* { box-sizing:border-box; }
img { max-width:100%; }

/* The navigation remains present instead of sliding away and no longer covers page titles. */
header,
header.header-hide,
header.header-show {
  position:fixed !important;
  inset:0 0 auto !important;
  top:0 !important;
  transform:none !important;
  background:rgba(255,255,255,.96) !important;
  border-top:3px solid var(--st-orange) !important;
  border-bottom:1px solid rgba(17,24,39,.11) !important;
  box-shadow:0 10px 30px rgba(17,24,39,.07) !important;
  backdrop-filter:blur(18px) !important;
  z-index:1000 !important;
}
header nav { width:min(1180px,calc(100% - 40px)) !important; min-height:72px !important; margin:auto !important; }
header .brand { color:var(--st-ink) !important; font-family:var(--font-head) !important; font-weight:700 !important; }
header .brand img { width:35px !important; height:44px !important; object-fit:contain !important; }
header .brand .sub { color:#7d8594 !important; }
header .navlinks { background:transparent !important; border:0 !important; box-shadow:none !important; border-radius:0 !important; gap:4px !important; }
header .navlinks > a,
header .nav-dropdown-trigger {
  min-width:0 !important;
  min-height:40px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  color:#3f4757 !important;
  border:0 !important;
  border-radius:0 !important;
  padding:10px 12px !important;
  margin:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  line-height:20px !important;
  white-space:nowrap !important;
  transition:color .2s ease !important;
}
header .navlinks > a:hover,
header .nav-dropdown-trigger:hover,
header .navlinks > a.active {
  color:var(--st-orange) !important;
  background:transparent !important;
  transform:none !important;
  translate:none !important;
  scale:1 !important;
  padding:10px 12px !important;
  margin:0 !important;
}
header .navlinks > a:hover::before,
header .nav-dropdown-trigger:hover::before { transform:none !important; }
header .nav-dd-caret {
  width:6px !important;
  height:6px !important;
  flex:0 0 6px !important;
  display:inline-block !important;
  margin:-3px 0 0 !important;
  border:0 !important;
  border-right:1.5px solid currentColor !important;
  border-bottom:1.5px solid currentColor !important;
  background:none !important;
  font-size:0 !important;
  line-height:0 !important;
  transform:rotate(45deg) !important;
  transition:transform .2s ease !important;
}
header .nav-dropdown.open .nav-dd-caret,
header .nav-dropdown-trigger[aria-expanded="true"] .nav-dd-caret { transform:rotate(225deg) translate(-2px,-2px) !important; }
header .navlinks > a.active::after,
header .nav-dropdown-trigger.active::after { background:var(--st-orange) !important; height:2px !important; }
header .nav-dropdown-menu { top:calc(100% + 14px) !important; min-width:190px !important; padding:8px !important; border:1px solid var(--st-line) !important; border-radius:12px !important; background:#fff !important; box-shadow:var(--st-shadow) !important; }
header .nav-dropdown-menu a { border:0 !important; border-radius:8px !important; color:var(--st-ink) !important; }
header .nav-dropdown-menu a:hover { color:var(--st-orange) !important; background:#fff4ef !important; }
header .profile-icon-btn,
header .cart-icon-wrap,
header .nav-ref-btn { border:1px solid var(--st-line) !important; background:#fff !important; color:var(--st-ink) !important; box-shadow:none !important; }
header .nav-shop-btn { border:1px solid #f3b39f !important; background:#fff7f3 !important; color:var(--st-orange-dark) !important; box-shadow:none !important; }
header .nav-cta { border-radius:8px !important; background:var(--st-orange) !important; box-shadow:0 12px 25px rgba(239,81,44,.2) !important; }
#site { padding-top:75px !important; }

/* Shared layout and type. */
.container { width:min(1180px,calc(100% - 48px)) !important; max-width:1180px !important; margin-inline:auto !important; }
main h1,main h2,main h3,main h4 { color:var(--st-ink); font-family:var(--font-head); letter-spacing:-.035em; }
main p { color:var(--st-muted); }
.tag-pill,.page-hero-bar .tag-pill,.shop-hero .tag-pill,.contact-page-hero .tag-pill,.page-hero-bar-label,.eyebrow,.contact-kicker {
  display:inline-flex !important;
  width:max-content !important;
  align-items:center !important;
  border:0 !important;
  border-radius:4px !important;
  background:var(--st-orange) !important;
  color:#fff !important;
  padding:9px 14px !important;
  box-shadow:none !important;
  font:600 .66rem/1 var(--font-mono) !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
}
.btn,.add-cart-btn,.place-order-btn,.auth-submit-btn,.contact-primary-action {
  border:0 !important;
  border-radius:8px !important;
  background:var(--st-orange) !important;
  color:#fff !important;
  box-shadow:0 12px 26px rgba(239,81,44,.18) !important;
}
.btn:hover,.add-cart-btn:hover,.place-order-btn:hover,.auth-submit-btn:hover,.contact-primary-action:hover { background:var(--st-orange-dark) !important; transform:translateY(-1px); }
input,select,textarea {
  border:1px solid var(--st-line-strong) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--st-ink) !important;
  box-shadow:none !important;
}
input:focus,select:focus,textarea:focus { border-color:var(--st-orange) !important; outline:3px solid rgba(239,81,44,.13) !important; }

/* Public page mastheads share the same architectural material language. */
.page-hero-bar,.shop-hero,.contact-page-hero {
  position:relative !important;
  min-height:330px !important;
  display:grid !important;
  place-items:center !important;
  padding:88px 0 76px !important;
  margin:0 !important;
  overflow:hidden !important;
  background:
    linear-gradient(90deg,rgba(248,245,239,.95),rgba(248,245,239,.79) 58%,rgba(248,245,239,.45)),
    url('images/home-test/hero-architecture.webp') center 64%/cover no-repeat !important;
  border-bottom:1px solid var(--st-line) !important;
}
.shop-hero {
  min-height:390px !important;
  background:
    linear-gradient(90deg,rgba(248,245,239,.97) 0%,rgba(248,245,239,.88) 42%,rgba(248,245,239,.32) 68%,rgba(248,245,239,.12) 100%),
    url('images/home-test/shop-showroom-hero-v1.webp') center/cover no-repeat !important;
}
.shop-hero .tag-pill {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:var(--st-orange) !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.page-hero-bar::before,.shop-hero::before,.contact-page-hero::before { content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--st-orange); }
.page-hero-bar .container,.shop-hero .container,.contact-page-hero .container { position:relative; z-index:1; text-align:left !important; }
.page-hero-bar h1,.shop-hero h1,.contact-page-hero h1 { max-width:850px; margin:20px 0 14px !important; color:var(--st-ink) !important; font-size:clamp(3rem,5vw,5.2rem) !important; line-height:.94 !important; letter-spacing:-.058em !important; text-wrap:balance; }
.page-hero-bar p,.shop-hero p,.contact-page-hero p { max-width:680px; margin:0 !important; color:#4f5a6d !important; font-size:1.05rem !important; line-height:1.65 !important; text-align:left !important; }

/* Adhesive and grout detail pages. */
.products { padding:112px 0 !important; background:var(--st-paper) !important; color:var(--st-ink) !important; }
.products h2,.products h3,.products h4,.products strong { color:var(--st-ink) !important; }
.products p,.products li,.products small,.products .sub-lead { color:var(--st-muted) !important; }
.prod-tabs { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:0 !important; margin:0 0 52px !important; border:1px solid var(--st-line-strong) !important; border-radius:14px !important; background:#fff !important; overflow:hidden !important; box-shadow:none !important; }
.prod-tab { min-height:60px !important; border:0 !important; border-right:1px solid var(--st-line) !important; border-radius:0 !important; background:#fff !important; color:#525d70 !important; transition:none !important; transform:none !important; }
.prod-tab:last-child { border-right:0 !important; }
.prod-tab.selected { background:var(--st-ink) !important; color:#fff !important; box-shadow:inset 0 -3px 0 var(--st-orange) !important; }
.prod-panel { gap:70px !important; padding:66px !important; border:1px solid var(--st-line) !important; border-top:4px solid var(--st-orange) !important; border-radius:var(--st-radius) !important; background:#fff !important; box-shadow:var(--st-shadow) !important; }
.prod-bag { min-height:500px !important; background:linear-gradient(160deg,#f8f5ef,#ece6dc) !important; border-radius:14px !important; }
.prod-bag img { max-height:460px !important; object-fit:contain !important; }
.prod-info { min-width:0; }
.prod-info h3 { font-size:clamp(2rem,3vw,3.25rem) !important; }
.prod-meta,.stat-row { border-color:var(--st-line) !important; }
.stat-box,.feature-card,.flagship-box,.product-price-card,.chart-frame,.grout-info {
  border:1px solid var(--st-line-strong) !important;
  border-radius:var(--st-radius) !important;
  background:#fff !important;
  color:var(--st-ink) !important;
  box-shadow:0 16px 38px rgba(17,24,39,.06) !important;
}
.feature-cards { gap:20px !important; }
.feature-card { padding:30px !important; }
.why-grid { gap:50px !important; }
.why-list li { border-bottom:1px solid var(--st-line) !important; }
.spec-table-wrap { overflow:auto !important; border:1px solid var(--st-line-strong) !important; border-radius:16px !important; background:#fff !important; box-shadow:0 18px 45px rgba(17,24,39,.07) !important; }
.spec-table-wrap table { min-width:760px; border-collapse:separate !important; border-spacing:0 !important; }
.spec-table-wrap th { background:var(--st-ink) !important; color:#fff !important; border-color:#394152 !important; }
.spec-table-wrap td { background:#fff !important; color:var(--st-ink) !important; border-color:var(--st-line) !important; }
.spec-table-wrap tr:nth-child(even) td { background:#f5f6f7 !important; }
.grout-top { gap:72px !important; padding:58px !important; border:1px solid var(--st-line) !important; border-radius:var(--st-radius) !important; background:#fff !important; box-shadow:var(--st-shadow) !important; }
.grout-bag { border-radius:14px !important; background:linear-gradient(160deg,#f8f5ef,#eae4da) !important; }
.grout-shades,.swatch-picker { border-radius:14px !important; }
.sw { box-shadow:inset 0 0 0 1px rgba(17,24,39,.15),0 5px 12px rgba(17,24,39,.12) !important; }

/* Shop: a continuous product collection rather than four isolated widgets. */
#site[data-page="shop"] main { background:#f7f5f0; }
#site[data-page="shop"] > main > .page > .container { padding:88px 0 118px !important; }
.shop-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:0 !important; align-items:stretch !important; }
.shop-card { min-width:0 !important; width:auto !important; height:auto !important; display:grid !important; grid-template-rows:340px 1fr !important; border:1px solid var(--st-line) !important; border-right:0 !important; border-radius:0 !important; background:#fff !important; box-shadow:none !important; overflow:hidden !important; }
.shop-card:first-child { border-radius:18px 0 0 18px !important; }
.shop-card:last-child { border-right:1px solid var(--st-line) !important; border-radius:0 18px 18px 0 !important; }
.shop-card .thumb { height:340px !important; border:0 !important; border-bottom:1px solid var(--st-line) !important; border-radius:0 !important; background:linear-gradient(155deg,#faf9f6,#ece8e0) !important; }
.shop-card .thumb img { width:100% !important; height:100% !important; object-fit:contain !important; padding:25px !important; }
.shop-card .body { min-width:0 !important; display:flex !important; flex-direction:column !important; padding:30px 24px 26px !important; }
.shop-card .type { color:var(--st-orange-dark) !important; }
.shop-card h2,
.shop-card h4 { font-size:1.35rem !important; }
.shop-card .d { min-height:94px; color:var(--st-muted) !important; line-height:1.55 !important; }
.shop-price-row { margin-top:auto !important; }
.shop-price { color:var(--st-ink) !important; }
.qty-slider-wrap input[type="range"] { outline:0 !important; }
.add-cart-btn { min-height:48px !important; margin-top:22px !important; }
.grout-colour-trigger { border:1px solid var(--st-line-strong) !important; border-radius:12px !important; background:#fff !important; color:var(--st-ink) !important; }
.grout-colour-popover { border:1px solid var(--st-line-strong) !important; border-radius:16px !important; background:#fff !important; color:var(--st-ink) !important; box-shadow:var(--st-shadow) !important; }
.hero-prod-overlay { backdrop-filter:blur(15px) !important; background:rgba(17,24,39,.46) !important; }
.hero-prod-panel { border:1px solid rgba(255,255,255,.7) !important; border-radius:20px !important; background:#fff !important; color:var(--st-ink) !important; box-shadow:0 30px 90px rgba(17,24,39,.3) !important; }

/* Contact. */
.contact-professional { padding:110px 0 130px !important; background:#fff !important; }
.contact-professional-grid { display:grid !important; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr) !important; gap:72px !important; align-items:center !important; }
.contact-feature-image { min-height:620px !important; margin:0 !important; border:0 !important; border-radius:18px !important; overflow:hidden !important; background:var(--st-paper) !important; box-shadow:var(--st-shadow) !important; }
.contact-feature-image img { width:100% !important; height:620px !important; object-fit:cover !important; }
.contact-feature-image figcaption { background:var(--st-ink) !important; color:#fff !important; }
.contact-details { min-width:0 !important; }
.contact-details h2 { margin:22px 0 18px !important; font-size:clamp(2.7rem,4.3vw,4.8rem) !important; line-height:.96 !important; }
.contact-detail-list { border-top:1px solid var(--st-line-strong) !important; }
.contact-detail-list > div { padding:20px 0 !important; border-bottom:1px solid var(--st-line) !important; }
.contact-detail-list dt { color:#7b8492 !important; }
.contact-detail-list dd,.contact-detail-list a { color:var(--st-ink) !important; }
.contact-actions { display:flex !important; flex-wrap:wrap !important; gap:20px !important; }

/* Cart, checkout, orders and account screens. */
.cart-page-wrap,.checkout-grid,.auth-wrap,#page-myorders { background:linear-gradient(180deg,#f7f5f0,#fff) !important; }
.cart-page-wrap { padding:92px 0 110px !important; }
.section-head { margin-bottom:38px !important; }
.section-head h1,.section-head h2 { font-size:clamp(2.8rem,4.4vw,4.8rem) !important; }
#cartContent > div:first-child { background:#fff !important; border:1px solid var(--st-line-strong) !important; border-radius:18px !important; overflow:hidden !important; box-shadow:var(--st-shadow) !important; }
#cartContent .cart-item { border-color:var(--st-line) !important; }
.order-summary-box,.checkout-form,#checkoutSummary,.contact-box,.order-success {
  border:1px solid var(--st-line-strong) !important;
  border-radius:18px !important;
  background:#fff !important;
  color:var(--st-ink) !important;
  box-shadow:var(--st-shadow) !important;
}
.checkout-grid { gap:42px !important; padding-top:96px !important; padding-bottom:120px !important; }
.checkout-form,#checkoutSummary { padding:38px !important; }
.auth-wrap { min-height:calc(100svh - 73px) !important; padding:72px 24px !important; }
.auth-box { width:min(470px,100%) !important; border:1px solid var(--st-line-strong) !important; border-radius:20px !important; background:#fff !important; box-shadow:var(--st-shadow) !important; }

/* Ref/admin tools become a single clear operations system. */
.admin-hub { min-height:calc(100svh - 73px) !important; padding:94px 0 120px !important; background:var(--st-paper) !important; }
.admin-hub-head { max-width:800px !important; margin:0 0 54px !important; text-align:left !important; }
.admin-hub-head h1 { margin:22px 0 12px !important; font-size:clamp(3.2rem,5vw,5.5rem) !important; line-height:.92 !important; }
.admin-hub-head p { font-size:1.05rem !important; }
.admin-hub-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px !important; }
.admin-hub-card { min-height:270px !important; padding:30px !important; border:1px solid var(--st-line-strong) !important; border-radius:16px !important; background:#fff !important; color:var(--st-ink) !important; box-shadow:none !important; text-align:left !important; transform:none !important; }
.admin-hub-card:hover { border-color:var(--st-orange) !important; background:#fffaf7 !important; transform:translateY(-3px) !important; box-shadow:var(--st-shadow) !important; }
.ahc-icon { width:48px !important; height:48px !important; border-radius:12px !important; background:#fff0e9 !important; color:var(--st-orange) !important; box-shadow:none !important; }
.ahc-label { color:var(--st-ink) !important; }
.ahc-desc { color:var(--st-muted) !important; }
.ahc-go { color:var(--st-orange-dark) !important; }
#site[data-page="orders"] main > .container,
#site[data-page="payment"] main > .container,
#site[data-page="stores"] main > .container,
#site[data-page="reviews"] main > .container,
#site[data-page="byref"] main > .container,
#site[data-page="cancel-orders"] main > .container {
  width:min(1120px,calc(100% - 48px)) !important;
  padding:92px 0 120px !important;
}
#site[data-page="orders"] main,
#site[data-page="payment"] main,
#site[data-page="stores"] main,
#site[data-page="reviews"] main,
#site[data-page="byref"] main,
#site[data-page="cancel-orders"] main { min-height:calc(100svh - 73px); background:var(--st-paper); }
.card,.callout,.ref-stores-panel,.store-combo-dropdown,.cx-modal {
  border:1px solid var(--st-line-strong) !important;
  border-radius:16px !important;
  background:#fff !important;
  color:var(--st-ink) !important;
  box-shadow:0 16px 38px rgba(17,24,39,.07) !important;
}
main table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; }
main table th { background:var(--st-ink) !important; color:#fff !important; border-color:#374151 !important; }
main table td { color:var(--st-ink) !important; border-color:var(--st-line) !important; background:#fff !important; }
main table tr:nth-child(even) td { background:#f5f6f7 !important; }

/* Legal and utility pages. */
#site[data-page="privacy-policy"] main,
#site[data-page="terms"] main,
#site[data-page="consent"] main { background:var(--st-paper); }
#site[data-page="privacy-policy"] .container,
#site[data-page="terms"] .container,
#site[data-page="consent"] .container { width:min(900px,calc(100% - 48px)) !important; }

/* Footer and floating actions. */
footer#contact { background:#fff !important; color:var(--st-ink) !important; border-top:1px solid var(--st-line-strong) !important; box-shadow:none !important; }
footer#contact .container { padding-top:70px !important; }
footer#contact .foot-grid { gap:50px !important; }
footer#contact h2 { color:var(--st-orange-dark) !important; }
footer#contact p,footer#contact a,footer#contact div,footer#contact span { color:#5f6a7d !important; }
footer#contact .foot-brand span { color:var(--st-ink) !important; }
footer#contact .foot-bottom { border-color:var(--st-line) !important; }
#floatShopBtn { right:22px !important; bottom:18px !important; border-radius:10px !important; background:var(--st-orange) !important; box-shadow:0 14px 35px rgba(239,81,44,.28) !important; }
#waWidget { left:22px !important; bottom:18px !important; }

@media (max-width:1100px) {
  .shop-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:18px !important; }
  .shop-card,.shop-card:first-child,.shop-card:last-child { border:1px solid var(--st-line) !important; border-radius:16px !important; }
  .admin-hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .contact-professional-grid { grid-template-columns:1fr 1fr !important; gap:42px !important; }
  .prod-panel { gap:42px !important; padding:46px !important; }
}

@media (max-width:760px) {
  header nav { width:calc(100% - 20px) !important; min-height:66px !important; }
  header .brand img { width:31px !important; height:38px !important; }
  header .navlinks { top:65px !important; left:0 !important; right:0 !important; width:100% !important; padding:12px !important; border:1px solid var(--st-line) !important; border-radius:0 0 16px 16px !important; background:#fff !important; box-shadow:0 22px 40px rgba(17,24,39,.15) !important; }
  header .navlinks > a,header .nav-dropdown-trigger { min-height:48px !important; display:flex !important; align-items:center !important; padding:0 10px !important; }
  header .navlinks > a.active::after,header .nav-dropdown-trigger.active::after { display:none !important; }
  header .navburger { border:1px solid #f1b09b !important; border-radius:10px !important; background:#fff7f3 !important; }
  #site { padding-top:69px !important; }
  .container { width:calc(100% - 32px) !important; }
  .page-hero-bar,.shop-hero,.contact-page-hero { min-height:280px !important; padding:66px 0 56px !important; }
  .page-hero-bar h1,.shop-hero h1,.contact-page-hero h1 { font-size:clamp(2.55rem,12vw,4rem) !important; }
  .products { padding:78px 0 !important; }
  .prod-tabs { display:flex !important; overflow:auto !important; scroll-snap-type:x mandatory; }
  .prod-tab { flex:0 0 82% !important; scroll-snap-align:start; }
  .prod-panel { grid-template-columns:1fr !important; padding:24px !important; gap:34px !important; }
  .prod-bag { min-height:390px !important; }
  .prod-bag img { max-height:360px !important; }
  .feature-cards { grid-template-columns:1fr !important; }
  .grout-top { grid-template-columns:1fr !important; padding:24px !important; gap:36px !important; }
  #site[data-page="shop"] > main > .page > .container { padding:58px 0 90px !important; }
  .shop-grid { grid-template-columns:1fr !important; gap:18px !important; }
  .shop-card { grid-template-rows:300px 1fr !important; }
  .shop-card .thumb { height:300px !important; }
  .shop-card .d { min-height:0; }
  .contact-professional { padding:72px 0 90px !important; }
  .contact-professional-grid { grid-template-columns:1fr !important; gap:44px !important; }
  .contact-feature-image,.contact-feature-image img { min-height:380px !important; height:380px !important; }
  .checkout-grid { grid-template-columns:1fr !important; padding-top:62px !important; }
  .checkout-form,#checkoutSummary { padding:24px !important; }
  .admin-hub { padding:70px 0 96px !important; }
  .admin-hub-grid { grid-template-columns:1fr !important; }
  .admin-hub-card { min-height:230px !important; }
  #site[data-page="orders"] main > .container,
  #site[data-page="payment"] main > .container,
  #site[data-page="stores"] main > .container,
  #site[data-page="reviews"] main > .container,
  #site[data-page="byref"] main > .container,
  #site[data-page="cancel-orders"] main > .container { width:calc(100% - 32px) !important; padding:66px 0 96px !important; }
  main table { min-width:720px; }
  .spec-table-wrap,main .table-wrap,main [style*="overflow-x"] { overflow-x:auto !important; -webkit-overflow-scrolling:touch; }
  footer#contact .foot-grid { grid-template-columns:1fr !important; gap:30px !important; }
  footer#contact .foot-bottom { align-items:flex-start !important; flex-direction:column !important; gap:12px !important; }
  #floatShopBtn { right:12px !important; bottom:10px !important; }
  #waWidget { left:12px !important; bottom:10px !important; }
}

@media (max-width:430px) {
  header .nav-shop-btn,header .nav-cta,header .profile-auth-wrap,header .account-pill { display:none !important; }
  .page-hero-bar h1,.shop-hero h1,.contact-page-hero h1 { font-size:2.7rem !important; }
  .shop-card .body { padding:25px 20px !important; }
  .auth-wrap { padding-inline:14px !important; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}
@media (max-width:760px){
  html:lang(si) #site[data-page="dealers"] .dealer-page-hero .tag-pill,
  html:lang(ta) #site[data-page="dealers"] .dealer-page-hero .tag-pill{
    width:fit-content !important;
    max-width:100% !important;
    min-height:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    line-height:1.35 !important;
    text-align:center !important;
  }
}

@media (min-width:761px) and (max-width:1279px){
  html:lang(si) header #navlinks.mobile-open,
  html:lang(ta) header #navlinks.mobile-open{
    position:absolute !important;
    top:100% !important;
    left:1rem !important;
    right:1rem !important;
    width:auto !important;
  }
}

/* Project manager v5: multi-photo/video portfolio ----------------------- */
.project-admin-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:28px;padding:20px 22px;border-radius:14px;box-shadow:0 10px 30px rgba(16,24,39,.04)}
.project-admin-toolbar-copy{display:grid;gap:4px;min-width:0}.project-admin-toolbar-copy>span{color:#ef542f;font:700 .64rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.project-admin-toolbar-copy strong{font-size:1rem}.project-admin-toolbar-copy small{color:#667085;font-size:.76rem;line-height:1.45}
.project-admin-toolbar-stats{display:flex;align-items:stretch;gap:8px}.project-admin-toolbar-stats>span{display:grid;min-width:78px;padding:9px 12px;border:1px solid #e3e6eb;border-radius:10px;background:#fafafa;text-align:center}.project-admin-toolbar-stats b{font:700 1rem/1.2 var(--font-head);color:#101827}.project-admin-toolbar-stats small{margin-top:3px;color:#7a8493;font-size:.62rem;text-transform:uppercase;letter-spacing:.07em}
.project-admin-card-copy i{padding:3px 6px;border-radius:4px;background:#f2f4f7;color:#667085;font:600 .62rem/1 var(--font-body);font-style:normal}
.project-media-fieldset{margin:28px 0 0;padding:22px;border:1px solid #d5d9e0;border-radius:12px;background:#fcfcfb}.project-media-fieldset legend{padding:0 8px;color:#273244;font:600 .72rem/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.project-media-fieldset legend b{color:#e8542c}
.project-media-top{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-bottom:17px;border-bottom:1px solid #e8e9ec}.project-media-top>div{display:grid;gap:5px}.project-media-top strong{font-size:.95rem}.project-media-top p{max-width:610px;margin:0;color:#667085;font-size:.77rem;line-height:1.55}
.project-media-note{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 0}.project-media-note span{padding:5px 8px;border-radius:999px;background:#f0f2f5;color:#657082;font-size:.66rem;font-weight:600}
.project-media-progress{min-height:20px;margin-top:10px;color:#c84222;font-size:.74rem;font-weight:700}.project-media-empty{display:grid;gap:5px;margin-top:10px;padding:28px;border:1px dashed #c7ccd4;border-radius:12px;background:#fff;text-align:center}.project-media-empty strong{font-size:.9rem}.project-media-empty span{color:#7b8492;font-size:.76rem}
.project-media-list{display:grid;gap:12px;margin-top:10px}.project-media-item{display:grid;grid-template-columns:168px minmax(0,1fr);gap:16px;padding:12px;border:1px solid #e0e4e9;border-radius:12px;background:#fff}.project-media-thumb{position:relative;min-height:116px;border-radius:9px;overflow:hidden;background:#151a22}.project-media-thumb img,.project-media-thumb video{display:block;width:100%;height:100%;min-height:116px;max-height:150px;object-fit:cover}.project-media-type{position:absolute;left:8px;top:8px;padding:4px 7px;border-radius:999px;background:rgba(15,23,41,.84);color:#fff;font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.project-media-play{position:absolute;left:50%;top:50%;display:grid;width:38px;height:38px;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,255,255,.92);color:#101827;font-size:.8rem}
.project-media-copy{display:grid;align-content:start;gap:10px;min-width:0}.project-media-title{display:grid;gap:3px}.project-media-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.project-media-title small{color:#7c8592;font-size:.68rem}.project-media-description>span{font-size:.64rem}.project-media-description input{padding:9px 11px;font-size:.8rem}
.project-media-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-cover-choice{display:flex;align-items:center;gap:7px;color:#b83a1c;font-size:.72rem;font-weight:800;cursor:pointer}.project-cover-choice input{width:17px;height:17px;accent-color:#ef542f}.project-media-video-note{color:#7b8492;font-size:.7rem}.project-media-actions>div{display:flex;gap:6px}.project-media-actions button{min-width:34px;height:34px;border:1px solid #d5d9e0;border-radius:8px;background:#fff;color:#344054;font-weight:800;cursor:pointer}.project-media-actions button:hover:not(:disabled){border-color:#ef542f;color:#d74623}.project-media-actions button:disabled{opacity:.35;cursor:default}.project-media-actions .project-media-remove{padding:0 10px;border-color:#efc2b9;color:#b53a24}
@media(max-width:1000px){.project-admin-toolbar{grid-template-columns:1fr auto}.project-admin-toolbar-stats{grid-row:2;grid-column:1/-1;justify-content:flex-start}.project-admin-toolbar-stats>span{flex:1}.project-media-item{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:620px){.project-admin-toolbar{grid-template-columns:1fr;gap:14px}.project-admin-toolbar-stats{grid-row:auto;grid-column:auto}.project-admin-toolbar>.project-primary-btn{width:100%}.project-media-top{align-items:stretch;flex-direction:column}.project-media-item{grid-template-columns:1fr}.project-media-thumb img,.project-media-thumb video{max-height:240px}.project-media-actions{align-items:flex-start;flex-direction:column}.project-media-actions>div{width:100%}.project-media-actions button{flex:1}.project-media-note{display:grid}.project-media-note span{text-align:center}}
.project-admin-toolbar>.project-admin-toolbar-stats{display:flex;gap:8px}.project-admin-toolbar>.project-admin-toolbar-copy{display:grid;gap:4px}
