 :root{--navy:#0B1F33;--cream:#F7F3EC;--gold:#B08D57;--ink:#1E2933;--muted:#66717D;--line:#E7E1D7;--max:1180px}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6}a{color:inherit}.container{width:min(var(--max),92%);margin:auto}.announcement{background:var(--navy);color:#fff;text-align:center;font-size:11px;letter-spacing:.15em;padding:8px}.header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav-wrap{min-height:100px;display:flex;align-items:center;gap:28px}.brand{width:auto;flex:none}.brand img{height:84px;width:auto;max-width:100%;display:block}.site-nav{display:flex;justify-content:center;gap:28px;flex:1}.site-nav a{text-decoration:none;font-size:14px;font-weight:700;padding:38px 0;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a.active{color:var(--gold);border-color:var(--gold)}.header-actions{display:flex;gap:10px;align-items:center}.icon-link{width:48px;height:48px;background:var(--navy);color:#fff;border:1px solid var(--navy);display:grid;place-items:center;text-decoration:none}.icon-link:hover{background:var(--gold);border-color:var(--gold)}.header-actions .btn{height:48px;padding:0 24px}.menu-toggle{display:none}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 23px;text-decoration:none;font-size:13px;font-weight:800;border:1px solid transparent}.btn-gold{background:var(--gold);color:#fff}.btn-navy{background:var(--navy);color:#fff}.btn-outline{border-color:var(--navy);color:var(--navy)}.hero,.page-hero{background:var(--cream);padding:80px 0}.hero-grid,.split,.detail-grid,.about-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.hero h1,.page-hero h1{font-size:clamp(42px,5vw,70px);line-height:1.02;color:var(--navy);margin:0 0 20px}.hero p,.page-hero p{font-size:17px;color:var(--muted);max-width:680px}.eyebrow{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero-image img,.split-image img,.detail-image img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.section,.detail{padding:90px 0}.section-cream{background:var(--cream)}.section-heading{max-width:720px;margin-bottom:42px}.section-heading h2,.split-copy h2{font-size:clamp(34px,4vw,52px);line-height:1.05;color:var(--navy);margin:8px 0 15px}.section-heading p,.split-copy p{color:var(--muted)}.supply-grid,.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.supply-grid{gap:1px;background:var(--line)}.supply-card{background:#fff;padding:40px 32px}.supply-number{color:var(--gold);font-weight:bold}.supply-card h3{color:var(--navy)}.product-card{min-width:0}.product-image-wrap{display:block;background:var(--cream);overflow:hidden}.product-image-wrap img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;transition:.4s}.product-card:hover img{transform:scale(1.025)}.product-card-body{padding-top:18px}.product-card h3{color:var(--navy);font-size:21px;line-height:1.2}.product-card p{color:var(--muted);font-size:14px}.text-link{font-weight:bold;text-decoration:none;color:var(--navy)}.split-image img{aspect-ratio:4/3}.feature-list,.values{display:grid;grid-template-columns:1fr 1fr;gap:25px}.feature-list div,.value{border-top:1px solid var(--line);padding-top:15px}.feature-list strong,.value h3{color:var(--navy)}.feature-list span,.value p{display:block;color:var(--muted);font-size:14px}.cta{background:var(--navy);color:#fff;padding:75px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{font-size:clamp(32px,4vw,48px);line-height:1.05;margin:0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.process-card{border-top:2px solid var(--gold);padding-top:18px}.process-card h3{color:var(--navy)}.process-card p{color:var(--muted);font-size:14px}.requirements{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.requirement{border:0px solid var(--line);padding:18px;color:var(--navy);font-weight:bold}.spec-table{margin-top:25px;border-top:1px solid var(--line)}.spec-row{display:grid;grid-template-columns:35% 65%;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.spec-row strong{color:var(--navy)}.spec-row span{color:var(--muted)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.contact-card{background:var(--cream);padding:35px}.contact-item{padding:15px 0;border-bottom:1px solid var(--line)}.contact-item strong{display:block;color:var(--navy)}.contact-item a{text-decoration:none;color:var(--muted)}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:bold;color:var(--navy)}.field input,.field select,.field textarea{font:inherit;padding:13px;border:1px solid var(--line)}.field textarea{min-height:150px}.form-status{display:none;background:var(--cream);padding:12px;margin-top:12px;font-size:13px}.footer{background:#081827;color:#fff;padding:60px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:45px}.footer-logo{width:130px;height:auto;max-width:100%}.footer h3{color:#D4BC91;font-size:13px;text-transform:uppercase;letter-spacing:.1em}.footer a,.footer span{display:block;text-decoration:none;color:#BFC9D1;font-size:13px;margin:8px 0}.footer-bottom{border-top:1px solid #ffffff1c;padding:18px 0;display:flex;justify-content:space-between;font-size:12px;color:#BFC9D1}.image-placeholder{aspect-ratio:4/5;background:var(--cream);display:grid;place-items:center;color:var(--gold);font-weight:bold}@media(max-width:900px){.hero-grid,.split,.detail-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.product-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.nav-wrap{min-height:76px}.brand img{height:60px}.menu-toggle{display:block;margin-left:auto;background:none;border:0;font-size:24px}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:10px 4%;gap:0}.site-nav.open{display:flex}.site-nav a{padding:12px 0}.header-actions{display:none}.hero,.page-hero,.section,.detail{padding:55px 0}.supply-grid,.product-grid,.requirements,.process-grid{grid-template-columns:1fr}.feature-list,.values,.form{grid-template-columns:1fr}.field.full{grid-column:auto}.cta-inner{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}

/* CMS / catalogue additions */
.product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.product-card { background:#fff; border:1px solid rgba(11,31,51,.10); border-radius:18px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease; }
.product-card:hover { transform:translateY(-4px); box-shadow:0 14px 36px rgba(11,31,51,.10); }
.product-image-wrap { display:block; aspect-ratio:4/5; background:#f1eee8; overflow:hidden; }
.product-image-wrap img { width:100%; height:100%; object-fit:cover; display:block; }
.product-card-body { padding:28px; }
.product-card-body h3 { margin:7px 0 10px; }
.product-card-body p { color:#5f6872; line-height:1.65; min-height:52px; }
.eyebrow { color:#B08D57; text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; font-weight:700; }
.text-link { color:#0B1F33; font-weight:700; text-decoration:none; }
.empty-state { grid-column:1/-1; padding:70px 30px; text-align:center; border:1px dashed rgba(11,31,51,.2); border-radius:18px; }

/* Admin CMS */
.admin-page { background:#f5f2ec; min-height:100vh; }
.admin-shell { max-width:1180px; margin:0 auto; padding:40px 22px 70px; }
.admin-topbar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:28px; }
.admin-brand { font-weight:800; letter-spacing:.06em; color:#0B1F33; }
.admin-actions { display:flex; gap:10px; flex-wrap:wrap; }
.admin-button { border:0; padding:12px 17px; border-radius:10px; cursor:pointer; font-weight:700; }
.admin-button.primary { background:#0B1F33; color:#fff; }
.admin-button.gold { background:#B08D57; color:#fff; }
.admin-button.light { background:#fff; color:#0B1F33; border:1px solid #d9d3c9; }
.admin-button.danger { background:#9b2c2c; color:#fff; }
.admin-layout { display:grid; grid-template-columns:1.25fr .75fr; gap:24px; }
.admin-panel { background:#fff; border-radius:16px; padding:24px; box-shadow:0 5px 25px rgba(11,31,51,.06); }
.admin-table-wrap { overflow:auto; }
.admin-table { width:100%; border-collapse:collapse; min-width:650px; }
.admin-table th,.admin-table td { padding:13px 10px; border-bottom:1px solid #ece7df; text-align:left; vertical-align:middle; }
.admin-table th { color:#68717b; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.admin-thumb { width:58px; height:70px; object-fit:cover; border-radius:7px; background:#eee; }
.admin-form { display:grid; gap:13px; }
.admin-form label { display:grid; gap:6px; font-weight:700; font-size:.86rem; color:#273746; }
.admin-form input,.admin-form textarea,.admin-form select { width:100%; box-sizing:border-box; padding:11px 12px; border:1px solid #d8d2c9; border-radius:9px; font:inherit; background:#fff; }
.admin-form textarea { min-height:90px; resize:vertical; }
.admin-check { display:flex !important; grid-template-columns:none !important; align-items:center; gap:9px !important; }
.admin-check input { width:auto; }
.admin-note { color:#66707a; font-size:.86rem; line-height:1.6; }
.admin-status { padding:11px 13px; border-radius:9px; background:#eef3f6; color:#0B1F33; margin-bottom:15px; display:none; }
.admin-status.show { display:block; }
@media (max-width:900px){ .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .admin-layout{grid-template-columns:1fr;} }
@media (max-width:620px){ .product-grid{grid-template-columns:1fr;} .admin-topbar{align-items:flex-start; flex-direction:column;} }

.detail { padding:80px 0; }
.detail-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:70px; align-items:start; }
.detail-media { background:#f1eee8; border-radius:18px; overflow:hidden; }
.detail-media img { width:100%; aspect-ratio:4/5; object-fit:cover; display:block; }
.detail-copy h1 { margin:8px 0 18px; }
.detail-description { color:#5f6872; line-height:1.75; font-size:1.05rem; }
.spec-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #ded8cf; margin:30px 0; }
.spec-item { padding:16px 0; border-bottom:1px solid #ded8cf; display:flex; flex-direction:column; gap:5px; }
.spec-item span { font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:#7b817f; }
.spec-item strong { color:#0B1F33; }
@media(max-width:760px){ .detail-grid{grid-template-columns:1fr;gap:35px;} .spec-grid{grid-template-columns:1fr;} .detail{padding:50px 0;} }

/* Category filters (products page) */
.category-filters { margin-bottom:38px; }
.filter-groups { display:flex; flex-wrap:wrap; gap:0; border-bottom:1px solid var(--line); }
.filter-tab { background:none; border:0; border-bottom:3px solid transparent; margin-bottom:-1px; padding:14px 24px; font:inherit; font-size:15px; font-weight:700; color:var(--muted); cursor:pointer; }
.filter-tab:hover { color:var(--navy); }
.filter-tab.active { color:var(--navy); border-bottom-color:var(--gold); }
.filter-count { font-size:12px; font-weight:400; color:var(--muted); margin-left:4px; }
.filter-subs { display:flex; flex-wrap:wrap; gap:8px; padding-top:20px; }
.filter-chip { background:#fff; border:1px solid var(--line); border-radius:999px; padding:8px 16px; font:inherit; font-size:13px; font-weight:600; color:var(--ink); cursor:pointer; }
.filter-chip:hover { border-color:var(--gold); }
.filter-chip.active { background:var(--navy); border-color:var(--navy); color:#fff; }
.filter-chip.active .filter-count { color:#d4bc91; }
.filter-chip.empty:not(.active) { color:#9aa3ab; }
.filter-tab:focus-visible,.filter-chip:focus-visible,.carousel-btn:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
@media(max-width:700px){ .filter-tab{padding:12px 14px;font-size:14px} }

/* Featured carousel (homepage) */
.carousel { position:relative; }
.carousel-viewport { overflow:hidden; }
.carousel-track { display:flex; gap:28px; will-change:transform; }
.carousel-track .product-card { flex:0 0 calc((100% - 56px) / 3); min-width:0; }
.carousel-controls { display:flex; gap:10px; margin-top:26px; }
.carousel-btn { width:44px; height:44px; border:1px solid var(--navy); background:#fff; color:var(--navy); font-size:18px; cursor:pointer; }
.carousel-btn:hover { background:var(--navy); color:#fff; }
@media(max-width:900px){ .carousel-track .product-card{ flex-basis:calc((100% - 28px) / 2); } }
@media(max-width:700px){ .carousel-track .product-card{ flex-basis:100%; } }

/* Contact form feedback + spam trap */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-status.ok{background:#e9f4ec;color:#1f5130}
.form-status.error{background:#fbeaea;color:#8a2424}
.form-status a{color:inherit;font-weight:700}
.btn:disabled{opacity:.6;cursor:wait}
