/* GeekGear UI/UX v1.2 | editorial sports retail
   Principles applied: UI UX Pro Max (systems/UX checks), Taste Skill
   (hierarchy, proportion, density), Design Motion Principles
   (purposeful state transitions, reduced-motion support).
   This stylesheet layers over the existing v1.1 UI; it does not change data flows.
*/
:root {
  --lime:#d4ef34;
  --lime2:#e5ff68;
  --ink:#161b13;
  --dark:#10150f;
  --paper:#f4f5ef;
  --muted:#626b60;
  --line:#d9ded3;
  --ui-radius:12px;
  --ui-fast:160ms;
  --ui-ease:cubic-bezier(.22,.7,.22,1);
}
html { scroll-padding-top:98px; }
body { background:var(--paper);text-rendering:optimizeLegibility; }
::selection { background:#d4ef34;color:#11160d; }
:focus-visible { outline:3px solid #a1ca00;outline-offset:3px; }
button, a, input, select, textarea, summary { -webkit-tap-highlight-color:transparent; }
img { height:auto; }
.shell { width:min(1280px,calc(100% - 64px)); }
.topbar { height:27px; font-size:9px; letter-spacing:.11em; border-bottom:1px solid #bfd62e; }
.topbar-right { right:max(32px,calc((100vw - 1280px)/2)); }
.site-header { height:76px;background:rgba(14,19,13,.985);border-bottom:1px solid #384033; }
.brand-mark { width:40px;height:40px; }
.brand-word { font-size:23px; }
.desktop-nav { gap:clamp(12px,1.65vw,28px); }
.desktop-nav a { font-size:12px;position:relative;color:#dae0d4;line-height:1.4;padding:15px 0; }
.desktop-nav a::after { content:"";position:absolute;bottom:7px;left:0;right:100%;height:2px;background:var(--lime);transition:right var(--ui-fast) var(--ui-ease); }
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after { right:0; }
.cart-trigger { min-height:42px;padding-inline:15px;border:1px solid #68745d;transition:background-color var(--ui-fast),color var(--ui-fast); }
.cart-trigger:hover { background:var(--lime);color:#11170d; }

/* An editorial hero, not a ticker + tilted-poster stack. */
.hero { background:radial-gradient(circle at 74% 30%,#283222 0,#151a14 42%,#111510 80%); }
.hero:before { opacity:.45;background:repeating-linear-gradient(90deg,transparent 0 140px,#ffffff08 140px 141px); }
.hero-grid { min-height:600px;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:clamp(30px,5vw,88px); }
.hero-copy { padding:78px 0 84px; }
.hero h1 { font-size:clamp(60px,6.7vw,102px);line-height:.95;max-width:620px;letter-spacing:-.035em; }
.hero h1 span { color:var(--lime); }
.hero-copy>p { color:#dce3d6;line-height:1.75;font-size:16px;max-width:455px; }
.hero-foot { margin-top:52px; }
.hero-composition { height:min(570px,45vw);min-height:480px;align-self:center;margin-left:0; }
.hero-pic { border:0;box-shadow:none;transform:none; }
.hero-pic img { filter:saturate(.93) contrast(1.04); }
.hero-pic.pic-1 { left:0;top:26px;bottom:auto;height:calc(100% - 54px);width:64%;border:1px solid #56694a;transform:none;box-shadow:22px 22px 0 #c7e72a; }
.hero-pic.pic-2 { top:5px;right:0;width:35%;height:47%;border:1px solid #74816b;transform:none;box-shadow:none; }
.hero-pic.pic-3 { bottom:27px;right:0;width:35%;height:46%;border:1px solid #74816b;transform:none;box-shadow:none; }
.hero-ring { right:24%;top:auto;bottom:23px;width:94px;height:94px;font-size:24px;border-width:2px;background:#11180ddc;transform:rotate(-10deg); }
.hero-cross { display:none; }
.hero-signal { opacity:.65; }
.photo-caption { bottom:-3px;right:0; }
.hero-stripe,.value-strip { display:none; }
.btn { min-height:48px;padding:15px 20px;font-size:12px;transition:background-color var(--ui-fast) var(--ui-ease),color var(--ui-fast) var(--ui-ease),border-color var(--ui-fast); }
.btn:hover { transform:none; }
.btn-lime:hover { background:#e3ff62;border-color:#e3ff62; }
.btn-outline:hover { background:#2b3527;border-color:#c1ceb9; }

/* Consistent spacing, shape, reading width and section hierarchy. */
.section { padding:83px 0 90px; }
.section-head { gap:30px;margin-bottom:31px; }
.section-head h2 { font-size:clamp(47px,5vw,75px);letter-spacing:-.028em; }
.section-head p { max-width:470px;line-height:1.8;font-size:15px; }
.eyebrow { letter-spacing:.15em; }
.shop-section { background:#f4f5ef;border-top:4px solid var(--lime); }
.filters { margin:23px 0 28px;gap:8px; }
.filter { font-size:11px;border-radius:50px;min-height:41px;padding:10px 17px;background:#fbfcf8;border-color:#d3dbcc;color:#364031;transition:background-color var(--ui-fast),border-color var(--ui-fast),color var(--ui-fast); }
.filter.is-active, .filter:hover { background:#d4ef34;color:#11170d;border-color:#c0db20; }
.product-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch; }
.product-card { border:1px solid #dce0d7;border-radius:var(--ui-radius);background:#fff;box-shadow:0 2px 4px #181f1406;transition:box-shadow var(--ui-fast) var(--ui-ease),border-color var(--ui-fast); }
.product-card:hover { transform:none;border-color:#bac6aa;box-shadow:0 10px 26px #19241413; }
.product-card img { object-fit:contain;object-position:center;background:linear-gradient(145deg,#fafcf7,#f0f2ed); }
.product-info { padding:17px 16px 19px; }
.product-title { line-height:1.35;min-height:2.5em; }
.product-card button, .product-card a { touch-action:manipulation; }

.custom-lead { background:#22291d; }
.custom-lead-grid { max-width:1280px; }
.custom-lead h2 { letter-spacing:-.035em; }
.consultation-section { padding:88px 0;background:#fafaf6; }
.consultation-heading h2 { letter-spacing:-.02em; }
.consultation-steps { gap:13px; }
.consultation-steps article { background:#fff;border:1px solid #dce2d6;border-radius:var(--ui-radius);padding:26px;min-height:195px; }
.consultation-steps article:first-child { border-color:#aecf2c;box-shadow:inset 0 4px 0 var(--lime); }
.consultation-steps h3 { line-height:1.15; }
.consultation-lower { gap:clamp(24px,4.5vw,68px);margin:66px 0 48px; }
.consultation-form-fields { background:#fff;border:1px solid #d9dfd5;box-shadow:0 12px 35px #16241010; }
.consultation-form-fields label { font-size:11px;letter-spacing:.08em; }
.consultation-form-fields :is(input,select,textarea) { min-height:47px;background:#f8faf5;border:1px solid #c9d1c2;border-radius:6px;transition:border-color var(--ui-fast),box-shadow var(--ui-fast); }
.consultation-form-fields :is(input,select,textarea):focus { outline:0;border-color:#7fa400;box-shadow:0 0 0 3px #d4ef3450; }
.consultation-form-fields .enquiry-button { border-radius:5px;min-height:55px; }
.consultation-form-fields .field-hint { line-height:1.55; }
.guides-teaser { border-radius:var(--ui-radius); }
.guide-link { min-height:45px; }
.fabric-card { border-radius:var(--ui-radius);overflow:hidden; }
.size-section { background:#d7ed49; }
.size-table-wrap { border-radius:var(--ui-radius);overflow:hidden; }
.sales-section { padding:70px 0;border-top:4px solid var(--lime); }
.sales-layout { gap:30px; }
.sales-action { border-radius:var(--ui-radius);box-shadow:0 10px 25px #00000020; }
.about-section { background:#171d16; }
.faq-section { padding:75px 0;background:#f8faf6; }
.faq-list details { border-bottom:1px solid #d8ded2; }
.faq-list summary { cursor:pointer; }
.contact-section { padding:76px 0; }
.contact-links a { transition:background-color var(--ui-fast),border-color var(--ui-fast); }
.contact-links a:hover { background:#eff5e5; }

/* Dialogs and mobile navigation preserve functionality while improving legibility. */
.drawer,.mobile-drawer { transition:transform 230ms var(--ui-ease); }
.drawer-head { padding:23px 24px; }
.mobile-drawer>a { transition:color var(--ui-fast),padding-left var(--ui-fast); }
.mobile-drawer>a:hover { padding-left:6px;color:var(--lime); }
.toast { border-radius:8px; }
@media (max-width:1150px) {
 .shell { width:min(1100px,calc(100% - 48px)); }
 .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .hero-grid { gap:28px; }
 .hero-composition { min-height:435px;height:45vw; }
 .hero h1 { font-size:clamp(64px,8vw,93px); }
}
@media (max-width:760px) {
 html { scroll-padding-top:70px; }
 .shell { width:calc(100% - 36px); }
 .topbar { height:25px;padding-inline:14px;font-size:8px; }
 .topbar-right { display:none; }
 .site-header { height:67px; }
 .brand-word { font-size:21px; }
 .brand-mark { width:35px;height:35px; }
 .hero-grid { display:flex;flex-direction:column;min-height:0;gap:10px; }
 .hero-copy { order:1;padding:55px 0 24px; }
 .hero h1 { font-size:clamp(56px,13vw,87px);line-height:.94; }
 .hero-copy>p { font-size:15px;line-height:1.65;margin:21px 0 27px; }
 .hero-foot { margin-top:31px; }
 .hero-composition { order:2;align-self:stretch;margin:0;height:clamp(310px,90vw,450px);min-height:0; }
 .hero-pic.pic-1 { top:10px;left:0;width:62%;height:calc(100% - 34px);box-shadow:10px 10px 0 var(--lime); }
 .hero-pic.pic-2 { width:35%;top:0;height:47%; }
 .hero-pic.pic-3 { width:35%;bottom:18px;height:45%; }
 .hero-ring { width:73px;height:73px;font-size:19px;right:23%;bottom:16px; }
 .photo-caption { display:none; }
 .section { padding:59px 0 65px; }
 .section-head h2 { font-size:clamp(48px,12vw,66px); }
 .product-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
 .product-card { border-radius:9px; }
 .product-info { padding:13px 12px 16px; }
 .consultation-section { padding:64px 0; }
 .consultation-steps article { min-height:0;padding:21px; }
 .consultation-lower { margin:39px 0; }
 .consultation-form-fields { border-radius:9px; }
 .sales-section { padding:55px 0; }
 .faq-section { padding:60px 0; }
 .contact-section { padding:57px 0; }
}
@media (max-width:420px) {
 .shell { width:calc(100% - 30px); }
 .hero-copy { padding-top:44px; }
 .hero h1 { font-size:clamp(53px,13.3vw,66px); }
 .hero-buttons { gap:9px; }
 .hero-buttons .btn { width:100%;min-height:50px; }
 .hero-composition { height:320px; }
 .product-grid { gap:9px; }
 .filter { min-height:41px;padding-inline:14px; }
}
@media (prefers-reduced-motion:reduce) {
 *, *::before, *::after { scroll-behavior:auto !important;transition-duration:.01ms !important;animation-duration:.01ms !important;animation-iteration-count:1 !important; }
}
