/*
Theme Name: G TECH Kitchen v5
Theme URI: https://www.drnmutfak.com.tr
Author: DRN Mutfak
Description: "Sahara Atelier" — an elegant export-house theme for DRN Mutfak professional kitchen equipment, designed for African wholesale buyers. Ivory & terracotta palette, Fraunces serif display, arch-framed imagery, port-route trust strip, full 2026 catalogue importer, live catalogue search, and a cart-to-order flow that lands in wp-admin with email notifications. Built-in SEO (meta, Open Graph, JSON-LD Product schema).
Version: 5.6.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: drn-mutfak
*/

/* ====================== TOKENS ====================== */
:root{
  --ivory:#F8F3EA;
  --sand:#EFE6D6;
  --ink:#221B14;
  --ink-2:#3A2F24;
  --espresso:#1C1510;
  --terra:#B4541F;
  --terra-deep:#8F3F14;
  --brass:#C2902E;
  --clay:#D9C9AE;
  --muted:#8A7B66;
  --line:rgba(34,27,20,.14);
  --line-d:rgba(248,243,234,.16);
  --fd:'Fraunces',Georgia,'Times New Roman',serif;
  --fb:'Inter',system-ui,-apple-system,sans-serif;
  --fm:'JetBrains Mono',ui-monospace,Consolas,monospace;
  --max:1240px;
  --pad:clamp(1rem,4vw,2.5rem);
  --r:6px;
  --arch:160px 160px 6px 6px;
}

/* ====================== BASE ====================== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
body{margin:0;font-family:var(--fb);font-size:1rem;line-height:1.7;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--terra);outline-offset:3px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.skip-link{position:absolute;left:-999px;top:0;background:var(--terra);color:#fff;padding:.6rem 1rem;z-index:999}
.skip-link:focus{left:0}

h1,h2,h3{font-family:var(--fd);font-weight:560;line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em;font-variation-settings:"opsz" 72}
h4{font-family:var(--fb);font-weight:600;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;margin:0 0 .8em}

/* Bilingual-style heading -> elegant serif + italic tail */
.h-slash{font-size:clamp(1.9rem,4vw,2.9rem)}
.h-slash em{font-style:italic;font-weight:400;color:var(--terra)}
.h-slash em::before{content:"— "}
.kicker{font-family:var(--fm);font-size:.7rem;letter-spacing:.26em;text-transform:uppercase;color:var(--terra);display:flex;align-items:center;gap:.7rem;margin-bottom:1.1rem}
.kicker::before{content:"";width:26px;height:2px;background:var(--brass)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-family:var(--fb);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;text-decoration:none;padding:.95rem 1.9rem;border:1px solid var(--terra);border-radius:999px;transition:all .22s;cursor:pointer;background:none;color:var(--terra)}
.btn-solid{background:var(--terra);color:#fff}
.btn-solid:hover{background:var(--terra-deep);border-color:var(--terra-deep);transform:translateY(-2px)}
.btn-ghost{color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink);background:rgba(34,27,20,.04)}
.sec-dark .btn-ghost{color:var(--ivory);border-color:var(--line-d)}
.sec-dark .btn-ghost:hover{border-color:var(--ivory);background:rgba(248,243,234,.07)}
.btn-dark{color:var(--ink);border-color:var(--line)}
.btn-dark:hover{background:var(--ink);color:var(--ivory);border-color:var(--ink)}

/* Mudcloth-inspired divider */
.kente{height:14px;background:
  repeating-linear-gradient(135deg,var(--terra) 0 10px,transparent 10px 20px),
  repeating-linear-gradient(45deg,var(--brass) 0 10px,transparent 10px 20px),
  var(--espresso);
  opacity:.92}

/* ====================== LOGO ====================== */
.gt-logo{display:inline-flex;flex-direction:column;align-items:flex-start;text-decoration:none;line-height:1}
.gt-logo .word{font-family:var(--fd);font-weight:600;font-size:1.7rem;letter-spacing:.02em;color:currentColor;position:relative;padding:.3em .05em .06em;display:inline-block}
.gt-logo .word .e{position:relative;color:#fff;padding:0 .07em;font-style:italic}
.gt-logo .word .e::before{content:"";position:absolute;inset:-.38em -.05em -.12em;background:var(--terra);border-radius:6px 6px 2px 2px;z-index:-1}
.gt-logo .word .e::after{content:"\2605\2009\2605\2009\2605";position:absolute;top:-.34em;left:50%;transform:translateX(-50%);font-size:.27em;color:var(--brass);letter-spacing:.08em;font-style:normal}
.gt-logo .tag{font-family:var(--fm);font-size:.56rem;letter-spacing:.34em;text-transform:uppercase;margin-top:.34rem;color:var(--muted)}

/* ====================== HEADER ====================== */
.topbar{background:var(--espresso);color:var(--clay);font-family:var(--fm);font-size:.7rem}
.topbar .wrap{display:flex;justify-content:space-between;gap:1rem;padding-block:.5rem;flex-wrap:wrap}
.topbar a{color:var(--clay);text-decoration:none}
.topbar a:hover{color:#fff}
.topbar .exp{color:var(--brass)}
.site-head{position:sticky;top:0;z-index:60;background:rgba(248,243,234,.94);backdrop-filter:blur(12px);color:var(--ink);border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding-block:.8rem}
.main-nav ul{list-style:none;display:flex;gap:1.8rem;margin:0;padding:0}
.main-nav a{font-family:var(--fb);font-weight:500;font-size:.86rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--ink-2);padding-block:.4rem;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--terra);border-color:var(--brass)}
.head-cta{display:none}
@media(min-width:1120px){.head-cta{display:inline-flex;padding:.65rem 1.3rem;font-size:.72rem}}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-family:var(--fb);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;padding:.55rem 1rem;cursor:pointer}
@media(max-width:980px){
  .nav-toggle{display:block}
  .main-nav{position:fixed;inset:0;background:var(--ivory);display:none;padding:6.5rem var(--pad) 2rem;z-index:55}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;gap:1.2rem}
  .main-nav a{font-size:1.4rem;font-family:var(--fd);text-transform:none;letter-spacing:0}
}

/* Header search */
.gtk-search{position:relative;flex:0 1 300px;display:none}
@media(min-width:760px){.gtk-search{display:block}}
.gtk-search input{width:100%;padding:.6rem 1rem .6rem 2.4rem;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:.88rem;color:var(--ink)}
.gtk-search input::placeholder{color:var(--muted)}
.gtk-search .ic{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.gtk-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px rgba(34,27,20,.16);overflow:hidden;display:none;max-height:420px;overflow-y:auto;z-index:70}
.gtk-results.open{display:block}
.gtk-results a{display:flex;gap:.8rem;align-items:center;padding:.65rem .9rem;text-decoration:none;border-bottom:1px solid var(--line)}
.gtk-results a:last-child{border-bottom:0}
.gtk-results a:hover,.gtk-results a.sel{background:var(--ivory)}
.gtk-results img{width:46px;height:46px;object-fit:cover;border-radius:8px;background:var(--sand);flex:none}
.gtk-results .ti{font-size:.86rem;font-weight:500;line-height:1.3}
.gtk-results .cd{font-family:var(--fm);font-size:.66rem;color:var(--muted)}
.gtk-results .pr{margin-left:auto;font-family:var(--fd);color:var(--terra);font-size:.9rem;white-space:nowrap}
.gtk-results .none{padding:.9rem;font-size:.85rem;color:var(--muted)}

/* ====================== HERO ====================== */
.hero{position:relative;background:var(--ivory);overflow:hidden}
.hero .wrap{display:grid;gap:3rem;grid-template-columns:1fr;align-items:center;padding-block:clamp(3rem,7vw,6rem)}
@media(min-width:920px){.hero .wrap{grid-template-columns:1.05fr .95fr}}
.hero h1{font-size:clamp(2.7rem,6vw,4.6rem);max-width:14ch}
.hero h1 .it{font-style:italic;color:var(--terra)}
.hero-sub{max-width:50ch;color:var(--ink-2);font-size:1.08rem;margin:1.3rem 0 2.2rem}
.hero-ctas{display:flex;gap:1rem;flex-wrap:wrap}
.hero-fig{position:relative;justify-self:center;width:min(100%,440px)}
.hero-fig .frame{border-radius:var(--arch);overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:0 30px 60px -28px rgba(34,27,20,.35)}
.hero-fig .frame img{width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center}
.hero-fig .tag{position:absolute;left:-14px;bottom:34px;background:var(--espresso);color:var(--ivory);font-family:var(--fm);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;padding:.55rem .9rem;border-radius:6px}
.hero-fig .tag b{color:var(--brass)}
.hero-fig::before{content:"";position:absolute;inset:-22px -22px auto auto;width:130px;height:130px;border:1px solid var(--brass);border-radius:50%;opacity:.5}
.word-wall{display:none}

/* Port routes trust strip */
.ports{background:var(--espresso);color:var(--clay);overflow:hidden}
.ports .lane{display:flex;gap:3.2rem;padding-block:1rem;white-space:nowrap;font-family:var(--fm);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;animation:lane 46s linear infinite;width:max-content}
@media (prefers-reduced-motion:reduce){.ports .lane{animation:none}}
@keyframes lane{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ports b{color:var(--brass);font-weight:600}
.ports .dot{color:var(--terra)}

/* ====================== SECTIONS ====================== */
.sec{padding-block:clamp(4rem,9vw,7rem)}
.sec-sand{background:var(--sand)}
.sec-dark{background:var(--espresso);color:var(--ivory)}
.sec-dark h2,.sec-dark h3{color:var(--ivory)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.8rem;flex-wrap:wrap}
.sec-head p{max-width:52ch;color:var(--muted);margin:0}
.sec-dark .sec-head p{color:var(--clay)}

/* Category grid */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.1rem}
.cat-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.7rem 1.5rem 1.4rem;text-decoration:none;display:flex;flex-direction:column;gap:.45rem;overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.cat-card::after{content:"→";position:absolute;right:1.2rem;bottom:1rem;font-family:var(--fd);font-size:1.2rem;color:var(--brass);opacity:0;transform:translateX(-6px);transition:all .22s}
.cat-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(34,27,20,.25);border-color:var(--brass)}
.cat-card:hover::after{opacity:1;transform:none}
.cat-card h3{font-size:1.22rem;margin:0;font-weight:560}
.cat-card .en{font-family:var(--fm);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.cat-card .cnt{margin-top:auto;font-family:var(--fm);font-size:.7rem;color:var(--terra)}

/* Product cards */
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.4rem}
.prod-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s}
.prod-card:hover{transform:translateY(-4px);border-color:var(--brass);box-shadow:0 20px 44px -20px rgba(34,27,20,.28)}
.prod-card .ph{aspect-ratio:4/3;background:linear-gradient(165deg,#fff, var(--sand));display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line)}
.prod-card .ph img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}
.prod-card .ph svg{opacity:.3;color:var(--muted)}
.prod-card .bd{padding:1.25rem 1.25rem 1.4rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.prod-code{font-family:var(--fm);font-size:.68rem;letter-spacing:.12em;color:var(--muted);display:inline-flex;align-items:center;gap:.5rem}
.prod-code::before{content:"";width:8px;height:8px;background:var(--brass);border-radius:2px;flex:none}
.prod-card h3{font-size:1.08rem;margin:0;font-weight:560}
.prod-card h3 a{text-decoration:none;color:var(--ink)}
.spec{margin:0;font-size:.8rem;color:var(--ink-2)}
.spec div{display:flex;justify-content:space-between;gap:1rem;padding:.32rem 0;border-bottom:1px dashed var(--line)}
.spec dt{color:var(--muted);font-weight:400}
.spec dd{margin:0;font-family:var(--fm);font-size:.72rem;text-align:right}
.prod-price{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:.8rem}
.prod-price .v{font-family:var(--fd);font-size:1.35rem;font-weight:560;color:var(--terra)}
.prod-price a{font-family:var(--fm);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-decoration:none}
.prod-price a:hover{color:var(--ink)}
.add-btn{width:100%;padding:.72rem 1rem;font-size:.74rem}
.add-btn.added{background:#2C6E49;border-color:#2C6E49;color:#fff}

/* Why Africa band */
.why-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.why{background:rgba(248,243,234,.05);border:1px solid var(--line-d);border-radius:18px;padding:1.6rem}
.why .ic{width:42px;height:42px;border-radius:12px;background:var(--terra);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1rem}
.why h3{font-size:1.15rem;font-weight:560}
.why p{color:var(--clay);font-size:.92rem;margin:0}

/* Order steps */
.steps{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:st}
.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.7rem 1.5rem;position:relative;counter-increment:st}
.step::before{content:"0" counter(st);font-family:var(--fd);font-style:italic;font-size:2.2rem;color:var(--brass);display:block;margin-bottom:.6rem}
.step h3{font-size:1.1rem;font-weight:560}
.step p{font-size:.9rem;color:var(--ink-2);margin:0}

/* Stats */
.stats{background:var(--terra);color:#fff}
.stats .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2rem;padding-block:3.4rem}
.stat .n{font-family:var(--fd);font-weight:560;font-size:clamp(2.4rem,5vw,3.4rem);line-height:1;font-style:italic}
.stat .l{font-family:var(--fm);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;opacity:.92;margin-top:.4rem}

/* About */
.about-grid{display:grid;gap:3rem;grid-template-columns:1fr;align-items:center}
@media(min-width:900px){.about-grid{grid-template-columns:1.1fr .9fr}}
.about-grid .txt p{color:var(--ink-2);max-width:60ch}
.fab{border:1px solid var(--line);border-radius:var(--arch);background:#fff;padding:2.4rem 2rem 2rem}
.fab ul{list-style:none;margin:0;padding:0;display:grid;gap:1.1rem}
.fab li{display:flex;gap:.9rem;align-items:baseline}
.fab li::before{content:"";width:9px;height:9px;background:var(--terra);border-radius:50%;flex:none;transform:translateY(-1px)}
.fab b{font-family:var(--fd);font-weight:560;font-size:1.05rem}

/* Contact */
.contact-grid{display:grid;gap:3rem;grid-template-columns:1fr}
@media(min-width:900px){.contact-grid{grid-template-columns:1fr 1fr}}
.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:1.2rem}
.contact-list a{color:var(--ivory);text-decoration:none}
.contact-list a:hover{color:var(--brass)}
.contact-list .k{font-family:var(--fm);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:.15rem}
.contact-list .v{font-family:var(--fd);font-size:1.3rem;font-weight:560}
.quote-form{display:grid;gap:1rem}
.quote-form label{font-family:var(--fm);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.quote-form input,.quote-form textarea{width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);padding:.85rem 1rem;font:inherit}
.sec-dark .quote-form input,.sec-dark .quote-form textarea{background:rgba(248,243,234,.06);border-color:var(--line-d);color:var(--ivory)}
.quote-form input:focus,.quote-form textarea:focus{outline:2px solid var(--terra);outline-offset:0;border-color:var(--terra)}

/* WhatsApp float */
.wa-float{position:fixed;right:1.2rem;bottom:1.2rem;z-index:80;display:flex;align-items:center;gap:.6rem;background:#25D366;color:#fff;text-decoration:none;border-radius:999px;padding:.8rem 1.2rem;font-weight:600;font-size:.85rem;box-shadow:0 12px 30px -8px rgba(0,0,0,.4);transition:transform .2s}
.wa-float:hover{transform:translateY(-3px)}
.wa-float svg{flex:none}
.wa-float span{display:none}
@media(min-width:680px){.wa-float span{display:inline}}

/* ====================== FOOTER ====================== */
.site-foot{background:var(--espresso);color:var(--clay)}
.site-foot .wrap{display:grid;gap:2.5rem;grid-template-columns:1fr;padding-block:3.6rem 2rem}
@media(min-width:840px){.site-foot .wrap{grid-template-columns:1.3fr 1fr 1fr}}
.site-foot .gt-logo{color:var(--ivory)}
.site-foot h4{color:var(--brass)}
.site-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem;font-size:.9rem}
.site-foot a{color:var(--clay);text-decoration:none}
.site-foot a:hover{color:#fff}
.foot-bottom{border-top:1px solid var(--line-d)}
.foot-bottom .wrap{display:flex;justify-content:space-between;gap:1rem;padding-block:1.1rem;font-family:var(--fm);font-size:.66rem;letter-spacing:.12em;flex-wrap:wrap}

/* ====================== ARCHIVE / SINGLE ====================== */
.page-hero{background:var(--sand);color:var(--ink);padding-block:4.5rem 3rem;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.page-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border:1px solid var(--brass);border-radius:50%;opacity:.4}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.4rem)}
.filter-bar{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:2.2rem}
.filter-bar a{font-family:var(--fm);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:.5rem 1.05rem;transition:all .15s;background:#fff}
.filter-bar a:hover,.filter-bar a.act{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.single-prod{display:grid;gap:3rem;grid-template-columns:1fr}
@media(min-width:900px){.single-prod{grid-template-columns:1fr 1fr}}
.single-prod .ph{background:#fff;border:1px solid var(--line);border-radius:var(--arch);display:flex;align-items:center;justify-content:center;min-height:380px;overflow:hidden}
.single-prod .ph img{mix-blend-mode:multiply}
.spec-table{width:100%;border-collapse:collapse;font-size:.92rem}
.spec-table th,.spec-table td{text-align:left;padding:.7rem .2rem;border-bottom:1px solid var(--line)}
.spec-table th{font-weight:500;color:var(--muted);width:50%}
.spec-table td{font-family:var(--fm);font-size:.8rem}
.prose{max-width:72ch}
.prose img{border-radius:18px}
article.hentry{padding-block:3rem}

/* ====================== ORDER / CART ====================== */
.gtk-cart-link{position:relative;display:inline-flex;align-items:center;color:var(--ink);text-decoration:none;padding:.4rem}
.gtk-cart-link:hover{color:var(--terra)}
.gtk-cart-link .cnt{position:absolute;top:-2px;right:-4px;background:var(--muted);color:#fff;font-family:var(--fm);font-size:.6rem;min-width:17px;height:17px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.gtk-cart-link.has .cnt{background:var(--terra)}
.order-grid{display:grid;gap:3rem;grid-template-columns:1fr}
@media(min-width:960px){.order-grid{grid-template-columns:1.25fr .85fr}}
.cart-table{width:100%;border-collapse:collapse;font-size:.92rem}
.cart-table th{font-family:var(--fm);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-align:left;padding:.5rem .4rem;border-bottom:2px solid var(--line)}
.cart-table td{padding:.85rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}
.cart-table .qty-in{width:74px;padding:.5rem;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.cart-table .rm{background:none;border:1px solid var(--line);border-radius:999px;width:30px;height:30px;cursor:pointer;color:var(--muted)}
.cart-table .rm:hover{color:#fff;background:var(--terra);border-color:var(--terra)}

/* Reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}}

/* ====================== PRODUCT TABLE (price list) ====================== */
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff}
.prod-table{width:100%;border-collapse:collapse;min-width:860px;font-size:.9rem}
.prod-table thead th{font-family:var(--fm);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:left;padding:.85rem 1rem;background:var(--sand);border-bottom:1px solid var(--line);position:sticky;top:0}
.prod-table td{padding:.7rem 1rem;border-bottom:1px solid var(--line);vertical-align:middle}
.prod-table tbody tr:last-child td{border-bottom:0}
.prod-table tbody tr:hover{background:var(--ivory)}
.prod-table .t-ph{width:72px}
.prod-table .t-ph img{width:56px;height:56px;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:var(--sand)}
.prod-table .noimg{display:block;width:56px;height:56px;border-radius:10px;background:var(--sand);border:1px dashed var(--line)}
.prod-table .t-code{font-family:var(--fm);font-size:.74rem;white-space:nowrap;color:var(--ink-2)}
.prod-table .t-name a{text-decoration:none;font-weight:500;color:var(--ink)}
.prod-table .t-name a:hover{color:var(--terra)}
.prod-table .t-spec{font-family:var(--fm);font-size:.72rem;color:var(--muted);white-space:nowrap}
.prod-table .t-pr{font-family:var(--fd);font-size:1.06rem;font-weight:560;color:var(--terra);white-space:nowrap}
.prod-table .row-add{display:flex;gap:.45rem;align-items:center}
.prod-table .qty-in{width:60px;padding:.45rem .5rem;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:.84rem;background:#fff}
.prod-table .add-btn{width:auto;padding:.5rem 1rem;font-size:.66rem;white-space:nowrap}
.filter-bar small{opacity:.55;font-size:.85em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media(max-width:700px){.prod-table{min-width:760px}}


/* ====================== IMAGE LOGO ====================== */
.logo-chip{display:inline-flex;align-items:center;background:#0B0B0B;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:.5rem .85rem;line-height:0}
.logo-chip img{height:34px;width:auto;display:block}
.site-foot .logo-chip img{height:30px}
@media(max-width:560px){.logo-chip img{height:26px}}

/* ====================== MEGA DROPDOWN (Catalogue) ====================== */
.main-nav li.has-mega{position:relative}
.main-nav .caret{font-size:.7em;opacity:.6}
.mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(6px);background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 60px rgba(34,27,20,.18);padding:1rem;width:min(640px,92vw);opacity:0;visibility:hidden;transition:all .18s ease;z-index:80}
.mega::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.has-mega:hover .mega,.has-mega:focus-within .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.25rem}
@media(min-width:760px){.mega-grid{grid-template-columns:repeat(3,1fr)}}
.mega-item{display:flex;align-items:center;gap:.7rem;padding:.5rem .6rem;border-radius:12px;text-decoration:none;transition:background .15s}
.mega-item:hover{background:var(--ivory)}
.mega-item img,.mi-ph{width:48px;height:48px;border-radius:10px;object-fit:cover;background:var(--sand);border:1px solid var(--line);flex:none}
.mega-item .mi-t{font-size:.84rem;font-weight:500;color:var(--ink);line-height:1.25;display:block}
.mega-item .mi-c{font-family:var(--fm);font-size:.6rem;color:var(--muted);display:block;margin-top:2px}
.mega-item span{min-width:0}
.mega-all{display:block;text-align:center;margin-top:.7rem;padding:.65rem;border-top:1px solid var(--line);font-family:var(--fm);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terra);text-decoration:none}
.mega-all:hover{color:var(--terra-deep)}
@media(max-width:980px){
  .mega{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:0;border-left:2px solid var(--line);border-radius:0;width:100%;padding:.6rem 0 .6rem 1rem;display:none}
  .has-mega.open .mega{display:block}
  .mega-grid{grid-template-columns:1fr}
}

/* category card thumbnails */
.cat-card{padding-top:1.3rem}
.cc-img{display:block;margin:-0.2rem 0 .9rem}
.cc-img img{width:84px;height:84px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:var(--sand)}

/* ====================== MOBILE OVERHAUL (v4.0) ====================== */
/* mobile search row under the sticky header */
.gtk-search--mobile{display:none;margin:0 var(--pad) .7rem;flex:none}
@media(max-width:759px){
  .gtk-search--mobile{display:block}
  .topbar .exp{display:none}
  .topbar .wrap{justify-content:center}
}
/* iOS: prevent zoom on focus */
@media(max-width:760px){
  input,select,textarea{font-size:16px !important}
}
/* product table -> card rows on phones */
@media(max-width:700px){
  .table-scroll{border:0;background:none;overflow:visible}
  .prod-table{min-width:0;display:block}
  .prod-table thead{display:none}
  .prod-table tbody{display:block}
  .prod-table tr{display:grid;grid-template-columns:72px 1fr;gap:.15rem .9rem;background:#fff;border:1px solid var(--line);border-radius:16px;padding:.9rem;margin-bottom:.8rem}
  .prod-table td{display:block;border:0;padding:0}
  .prod-table .t-ph{grid-column:1;grid-row:1/span 4}
  .prod-table .t-ph img,.prod-table .noimg{width:72px;height:72px}
  .prod-table .t-code{grid-column:2;font-size:.66rem}
  .prod-table .t-name{grid-column:2;font-size:.96rem;line-height:1.3}
  .prod-table .t-spec{display:none}
  .prod-table .t-pr{grid-column:2;font-size:1.15rem;margin-top:.15rem}
  .prod-table .t-add{grid-column:1/-1;margin-top:.7rem}
  .prod-table .row-add{width:100%}
  .prod-table .qty-in{width:74px;padding:.6rem .5rem}
  .prod-table .add-btn{flex:1;padding:.7rem 1rem;font-size:.74rem}
}
/* filter pills: one scrollable row on phones */
@media(max-width:700px){
  .filter-bar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.5rem;margin-inline:calc(var(--pad)*-1);padding-inline:var(--pad)}
  .filter-bar a{flex:none}
}
/* order cart table compact */
@media(max-width:640px){
  .cart-table{font-size:.82rem}
  .cart-table th:nth-child(2),.cart-table td:nth-child(2){display:none}
  .cart-table .qty-in{width:58px}
  .order-grid{gap:2rem}
}
/* single product */
@media(max-width:700px){
  .single-prod .ph{min-height:auto}
  .page-hero{padding-block:3rem 2rem}
}
/* touch targets & misc */
@media(max-width:560px){
  .hero .wrap{padding-block:2.4rem;gap:2rem}
  .hero-ctas .btn{flex:1;justify-content:center}
  .gtk-cart-link{padding:.55rem}
  .wa-float{padding:.75rem .9rem}
  .sec{padding-block:3rem}
  .mega-item{padding:.65rem .6rem}
  .steps,.why-grid{gap:.9rem}
}
/* very small screens */
@media(max-width:380px){
  .gt-logo .logo-chip img{height:22px}
  .prod-table tr{grid-template-columns:60px 1fr}
  .prod-table .t-ph img,.prod-table .noimg{width:60px;height:60px}
}

/* ====================== CATEGORY SELECTOR (catalogue top) ====================== */
.cat-select{position:relative;max-width:560px;margin-bottom:1.8rem}
.cs-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:16px;padding:.9rem 1.1rem;cursor:pointer;font:inherit;text-align:left;transition:border-color .15s,box-shadow .15s}
.cs-btn:hover{border-color:var(--brass)}
.cat-select.open .cs-btn{border-color:var(--terra);box-shadow:0 10px 30px -14px rgba(34,27,20,.25)}
.cs-label strong{font-family:var(--fd);font-size:1.15rem;font-weight:560;display:block;color:var(--ink)}
.cs-label small{font-family:var(--fm);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cs-caret{color:var(--terra);font-size:1rem;transition:transform .2s}
.cat-select.open .cs-caret{transform:rotate(180deg)}
.cs-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 26px 60px rgba(34,27,20,.2);max-height:62vh;overflow-y:auto;display:none;z-index:60;padding:.4rem}
.cat-select.open .cs-panel{display:block}
.cs-item{display:flex;gap:.85rem;align-items:center;padding:.55rem .7rem;border-radius:12px;text-decoration:none}
.cs-item:hover{background:var(--ivory)}
.cs-item.sel{background:var(--sand)}
.ci-ph{width:56px;height:56px;border-radius:12px;object-fit:cover;background:var(--sand);border:1px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--fm);font-size:.6rem;color:var(--muted)}
.ci-ph.all{background:var(--espresso);color:var(--brass);letter-spacing:.1em}
.ci-t{display:block;font-weight:500;color:var(--ink);font-size:.95rem;line-height:1.3}
.ci-d{display:block;font-family:var(--fm);font-size:.64rem;color:var(--terra);margin-top:2px}
.ci-tx{min-width:0}
@media(max-width:560px){.cs-panel{max-height:70vh}.ci-ph{width:48px;height:48px}}

/* product description line under the name */
.prod-table .t-desc{display:block;font-family:var(--fm);font-size:.66rem;color:var(--muted);margin-top:3px;letter-spacing:.04em}
@media(max-width:700px){.prod-table .t-desc{font-size:.62rem}}

/* ====================== FLOOR PLAN FORM ====================== */
.quote-form .qf-head{font-family:var(--fm);font-size:.66rem;letter-spacing:.1em;color:var(--brass);margin:0 0 1.1rem;line-height:1.7}
.quote-form .qf-2col{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
@media(max-width:560px){.quote-form .qf-2col{grid-template-columns:1fr}}
.quote-form select{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:.8rem .9rem;color:var(--ivory);font:inherit;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23C2902E'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center}
.quote-form select:disabled{opacity:.45;cursor:not-allowed}
.quote-form select option{color:#1C1510;background:#fff}
.quote-form input[type="file"]{width:100%;background:rgba(255,255,255,.06);border:1px dashed rgba(194,144,46,.55);border-radius:10px;padding:.75rem .9rem;color:var(--ivory);font-size:.85rem;cursor:pointer}
.quote-form input[type="file"]::file-selector-button{background:var(--terra);color:#fff;border:0;border-radius:8px;padding:.45rem .8rem;margin-right:.8rem;font-family:var(--fm);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.qf-msg{font-size:.85rem;margin:.8rem 0 0;min-height:1.2em}
.qf-msg.ok{color:#7FC97F}
.qf-msg.err{color:#E89A8A}
