/* ==========================================================================
   GBF Good Agro — stylesheet
   --------------------------------------------------------------------------
   สารบัญ
   1.  Tokens (ตัวแปรสี / เงา / มุมโค้ง)
   2.  Base & Layout
   3.  Image slots  ← ระบบใส่รูปจริง + กราฟิก fallback
   4.  Nav
   5.  Hero
   6.  Trust
   7.  About
   8.  Products & Promo
   9.  How-to
   10. Contact
   11. Footer & Floating LINE
   12. Motion / Reveal
   ========================================================================== */

/* ===== 1. TOKENS ========================================================= */
:root{
  --green-deep:#146B36;
  --green-leaf:#3FAE49;
  --green-light:#E8F7EC;
  --blue-sky:#1E88E5;
  --blue-deep:#0B4FA0;
  --gold:#FFC93C;
  --ink:#15321F;
  --white:#FFFFFF;
  --cream:#F6FBF4;
  /* สีประจำสินค้าแต่ละตัว — เลือกให้ตรงกับสีฝาและฉลากขวดจริง
     เวลาเพิ่มสินค้าใหม่ ให้ดูสีจากขวดแล้วเพิ่มตัวแปรตรงนี้ */
  --c-zenmax:#1E5E3A;
  --c-cabmax:#5B2D8E;
  --c-kingshark:#4A3218;
  --c-vamax:#1F7A33;
  --c-bionax:#3F6B14;
  --c-dronmax:#15559E;
  --radius:18px;
  --shadow:0 8px 24px rgba(20,60,35,.12);
}

/* ===== 2. BASE & LAYOUT ================================================== */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:'Sarabun',sans-serif;color:var(--ink);background:var(--cream);line-height:1.7}
h1,h2,h3,h4,.nav-logo,.btn{font-family:'Prompt',sans-serif}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
.container{width:100%;max-width:1080px;margin:0 auto;padding:0 20px}
section{padding:56px 0}
.section-tag{display:inline-block;background:var(--green-light);color:var(--green-deep);font-family:'Prompt';font-weight:600;font-size:.85rem;padding:6px 16px;border-radius:999px;margin-bottom:12px}
.section-title{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700;color:var(--green-deep);margin-bottom:8px}
.section-sub{color:#4a6a55;max-width:640px;margin-bottom:32px}

/* ข้ามไปเนื้อหาหลัก — โผล่เมื่อกด Tab */
.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--green-deep);color:#fff;padding:12px 20px;border-radius:0 0 12px 0;font-family:'Prompt';font-weight:600}
.skip-link:focus{left:0}

/* โฟกัสที่มองเห็นได้ชัดสำหรับผู้ใช้คีย์บอร์ด */
a:focus-visible,button:focus-visible{outline:3px solid var(--blue-sky);outline-offset:3px;border-radius:4px}

/* ===== 3. IMAGE SLOTS ====================================================
   โครงสร้าง:
     <div class="slot">
       <div class="slot-art">…กราฟิก CSS…</div>
       <img class="slot-img" data-slot src="images/…" alt="…">
     </div>
   ค่าเริ่มต้น = โชว์ .slot-art (กราฟิก CSS) และซ่อน <img>
   js/main.js จะเช็คว่ารูปโหลดสำเร็จหรือไม่ ถ้าสำเร็จจึงเติมคลาส .has-img
   ให้ .slot → สลับมาโชว์รูปจริงแทน
   ผลคือ: ยังไม่มีไฟล์รูป = ไม่มีไอคอนรูปแตก หน้าเว็บยังสวยเหมือนเดิม
   ------------------------------------------------------------------------ */
.slot{position:relative}
.slot .slot-img{display:none}
.slot.has-img .slot-img{display:block}
.slot.has-img .slot-art{display:none}

/* ===== 4. NAV ============================================================ */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;max-width:1080px;margin:0 auto;padding:0 20px}
.nav-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem}
.nav-logo .gbf{background:linear-gradient(120deg,var(--blue-deep),var(--green-leaf));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.5rem;letter-spacing:.5px}
.nav-logo small{display:block;font-size:.62rem;font-weight:600;color:var(--green-deep);line-height:1}
.nav-logo .slot-art{display:flex;align-items:center;gap:10px}
.nav-logo .slot-img{height:60px;width:auto}
.nav-links{display:flex;gap:6px;list-style:none}
.nav-links a{font-family:'Prompt';font-weight:500;font-size:.9rem;padding:8px 14px;border-radius:999px;transition:.2s}
.nav-links a:hover{background:var(--green-light);color:var(--green-deep)}
.nav-cta{background:linear-gradient(120deg,var(--green-leaf),var(--green-deep));color:#fff!important;font-weight:600}
.nav-cta:hover{opacity:.9}
.hamburger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.hamburger span{display:block;width:24px;height:3px;background:var(--green-deep);margin:5px 0;border-radius:2px;transition:.3s}
.hamburger.x span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.hamburger.x span:nth-child(2){opacity:0}
.hamburger.x span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
@media(max-width:860px){
  .hamburger{display:block}
  .nav-links{position:fixed;top:74px;left:0;right:0;background:#fff;flex-direction:column;padding:16px 20px 24px;gap:4px;box-shadow:0 12px 24px rgba(0,0,0,.1);transform:translateY(-130%);transition:.3s;z-index:-1}
  .nav-links.open{transform:translateY(0)}
  .nav-links a{display:block;padding:12px 16px;font-size:1rem}
}

/* ===== 5. HERO ===========================================================
   ภาพแบนเนอร์ด้านบน + ข้อความและปุ่มสั่งซื้อด้านล่าง
   ภาพมีตัวหนังสือฝังอยู่ จึงแสดงเต็มภาพเสมอ (ห้ามใช้ object-fit:cover
   เพราะจะครอปชื่อบริษัทหายไปบนจอแคบ)
   ------------------------------------------------------------------------ */
.hero{position:relative;padding:96px 0 40px;background:linear-gradient(180deg,#E3F2FF 0%,#EAF6EC 55%,var(--cream) 100%)}
/* ความกว้างภาพปรับตามความสูงจอ: บนโน้ตบุ๊กจอเตี้ย (เช่น 1280×800, 1366×768)
   ภาพเต็มกรอบจะสูง 585px ดันปุ่ม "สั่งซื้อเลย" ตกขอบจอ จึงหดภาพลงให้เหลือที่ว่าง
   ~320px สำหรับส่วนอื่น (วัดจริง: เว้นบนใต้เมนู 96 + ช่องไฟ 30 + ข้อความและปุ่ม 156
   + เผื่อระยะหายใจจากขอบล่างจอ ~40)
   กำหนดต่ำสุดไว้ 560px กันภาพเล็กจนอ่านชื่อบริษัทไม่ออก — ตอนถือมือถือแนวนอน
   (จอสูงแค่ ~390px) จึงต้องเลื่อนลงนิดหนึ่งถึงจะเห็นปุ่ม ซึ่งยอมรับได้ */
.hero-banner{border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(20,60,35,.18);background:#DCEFE0;
  margin:0 auto;max-width:clamp(min(100%,560px),calc((100vh - 320px) * 1.7778),100%)}
/* width/height ใน <img> ทำให้เบราว์เซอร์จองพื้นที่ตามสัดส่วนภาพไว้ก่อนโหลด
   หน้าจึงไม่กระตุก และไม่ต้องบังคับ height:100% ที่อาจยืดภาพ */
.hero-banner img{width:100%;height:auto;display:block}
.hero-text{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center;margin-top:30px}
.hero h1{font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:800;line-height:1.3;color:var(--green-deep)}
.hero h1 .blue{color:var(--blue-deep);white-space:nowrap}
.hero p.lead{margin-top:10px;font-size:1rem;color:#33523f}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.hero-badges span{background:#fff;border:1.5px solid var(--green-leaf);color:var(--green-deep);font-family:'Prompt';font-size:.8rem;font-weight:500;padding:5px 13px;border-radius:999px;display:flex;align-items:center;gap:6px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:999px;font-weight:600;font-size:1rem;transition:.2s;cursor:pointer;border:0}
.btn-primary{background:linear-gradient(120deg,var(--green-leaf),var(--green-deep));color:#fff;box-shadow:0 6px 18px rgba(30,140,60,.35)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,140,60,.4)}
.btn-outline{background:#fff;color:var(--green-deep);border:2px solid var(--green-leaf)}
.btn-outline:hover{background:var(--green-light)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}

@media(max-width:820px){
  .hero{padding:88px 0 32px}
  .hero-banner{border-radius:14px}
  .hero-text{grid-template-columns:1fr;text-align:center;gap:18px;margin-top:22px}
  .hero-badges,.hero-actions{justify-content:center}
}
@media(max-width:480px){
  .hero-banner{border-radius:10px}
  .hero .btn{padding:12px 22px;font-size:.95rem}
}

/* ===== 6. TRUST ========================================================== */
.trust{background:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.trust-card{background:var(--cream);border-radius:var(--radius);padding:24px 18px;text-align:center;border:1px solid #E1EFE3}
.trust-card .ic{font-size:2rem;margin-bottom:10px}
.trust-card h4{font-size:1rem;color:var(--green-deep);margin-bottom:4px}
.trust-card p{font-size:.85rem;color:#4a6a55}
@media(max-width:820px){.trust-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== 7. ABOUT ========================================================== */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.about-logo{background:linear-gradient(150deg,#EAF6FF,var(--green-light));border-radius:24px;padding:40px;text-align:center;box-shadow:var(--shadow)}
.about-logo .biglogo{font-family:'Prompt';font-weight:800;font-size:3.4rem;background:linear-gradient(120deg,var(--blue-deep),var(--green-leaf));-webkit-background-clip:text;background-clip:text;color:transparent}
.about-logo .slogan{font-family:'Prompt';color:var(--green-deep);font-weight:600;margin-top:4px}
.about-logo .quote{font-size:.9rem;color:#4a6a55;margin-top:8px}
.about-logo .slot-img{max-width:min(240px,100%);margin:0 auto}
.about ul{list-style:none;margin-top:16px}
.about ul li{padding:10px 0 10px 34px;position:relative}
.about ul li::before{content:"✓";position:absolute;left:0;top:8px;width:24px;height:24px;background:var(--green-leaf);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}
/* min-width:0 — ลูกของ grid ค่าเริ่มต้นจะยืดตามเนื้อหาข้างใน ทำให้กล่องโลโก้
   (padding 40 + โลโก้ 240 = 320px) ดันหน้าล้นบนจอ 320px */
.about-grid>*{min-width:0}
.about-co{font-size:1.25rem;color:var(--green-deep);line-height:1.4}
.about-tag{font-family:'Prompt';font-weight:600;color:var(--blue-deep);margin:2px 0 12px}
.about-grid p+p{margin-top:10px}
.about-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:18px;margin-top:32px}
.about-cards>*{min-width:0}
.about-card{background:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);border:1px solid #E1EFE3}
.about-card h4{color:var(--green-deep);font-size:1.02rem;margin-bottom:8px}
.about-card p{font-size:.95rem;color:#33523f}
.about-more{display:inline-block;margin-top:12px;font-family:'Prompt';font-weight:600;color:var(--green-deep)}
.about-more:hover{text-decoration:underline}
.about-close{margin-top:22px;background:linear-gradient(120deg,#EAF6FF,var(--green-light));border-left:4px solid var(--green-leaf);border-radius:12px;padding:18px 22px;color:#33523f}
.about-sign{margin-top:10px;font-family:'Prompt';font-weight:700;color:var(--green-deep)}
@media(max-width:820px){.about-grid{grid-template-columns:1fr}}
@media(max-width:480px){.about-logo{padding:24px}}

/* ----- แกลเลอรีสถานที่และการจัดส่ง -----
   รูปชุดนี้เป็นอาคารจริงของบริษัท มีการใช้ AI รวมภาพพนักงานเข้าไป
   คำบรรยายใต้ภาพจึงเขียนถึง "สถานที่" ไม่อ้างถึงตัวบุคคลในภาพ */
.about-gallery{margin-top:40px}
.gal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gal-grid>*{min-width:0}
figure.gal{position:relative;margin:0;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#EAF4EC}
figure.gal img{width:100%;height:100%;object-fit:cover;display:block}
figure.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;
  background:linear-gradient(180deg,rgba(11,46,25,0) 0%,rgba(11,46,25,.82) 60%);
  color:#fff;font-family:'Prompt';font-weight:500;font-size:.88rem}
figure.gal img{aspect-ratio:16/10}
@media(max-width:820px){
  figure.gal figcaption{font-size:.8rem;padding:22px 12px 10px}
}
@media(max-width:520px){
  .gal-grid{grid-template-columns:1fr}
}

/* ===== 7b. TEAM — บอร์ดผู้บริหาร ======================================== */
.team{background:#fff}
.tm{margin:0;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid #E1EFE3;text-align:center}
.tm img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.tm figcaption{padding:12px 12px 14px;display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.45}
.tm figcaption b{font-family:'Prompt';color:var(--green-deep);font-size:1rem}
.tm figcaption small{font-size:.82rem;color:#5b7a66}
.tm-role{font-family:'Prompt';font-weight:600;font-size:.8rem;color:#fff;background:linear-gradient(120deg,var(--blue-deep),var(--blue-sky));padding:3px 12px;border-radius:999px;margin-bottom:4px}
.tm-title{font-size:.85rem;color:#33523f;margin-top:4px}
.tm-top{display:grid;grid-template-columns:repeat(2,minmax(0,240px));justify-content:center;gap:22px}
.tm-lead figcaption b{font-size:1.05rem}
.tm-depts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px;padding-top:30px;border-top:2px solid var(--green-light)}
.tm-dept{display:flex;flex-direction:column;gap:14px;min-width:0}
.tm-dept h3{font-size:.95rem;text-align:center;color:#fff;background:linear-gradient(120deg,var(--green-leaf),var(--green-deep));border-radius:999px;padding:7px 12px}
.tm-dept .tm+.tm{width:86%;align-self:center}
.tm-chart{text-align:center;margin-top:26px}
.tm-chart a{font-family:'Prompt';font-weight:600;color:var(--green-deep)}
.tm-chart a:hover{text-decoration:underline}
@media(max-width:900px){.tm-depts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){
  .tm-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .tm-depts{gap:12px}
  .tm figcaption{padding:10px 8px 12px}
  .tm figcaption b{font-size:.9rem}
  .tm-title{font-size:.78rem}
  .tm-dept h3{font-size:.82rem;padding:6px 8px}
}

/* ===== 8. PRODUCTS & PROMO =============================================== */
.products{background:linear-gradient(180deg,var(--cream),#EAF4EC)}
/* กำหนดจำนวนคอลัมน์ตายตัว ไม่ใช้ auto-fit เพราะจำนวนสินค้าเป็นเลขคู่ (6 ตัว)
   ถ้าปล่อย auto-fit จะได้ 5 ใบแถวแรกแล้วเหลือใบเดียวโดดๆ แถวสอง
   3 คอลัมน์ = 3+3 ลงตัวพอดี และการ์ดกว้างพอให้ข้อความไทยอ่านสบาย */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:860px){.prod-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
/* บนมือถือคง 2 คอลัมน์ไว้ ถ้าเหลือคอลัมน์เดียวการ์ด 6 ใบจะยาวเกิน 3,400px
   ต้องปัดจอหลายรอบกว่าจะเห็นครบ — 2 คอลัมน์กวาดตาดูทั้งหมดได้เร็วกว่า
   ย่อรูปขวดกับตัวอักษรลงเล็กน้อยเพื่อให้ข้อความไทยยังอ่านสบายในการ์ดที่แคบลง */
@media(max-width:560px){
  .prod-shot,.prod-shot .slot-img{height:120px}
  .prod-head{padding:18px 10px 16px}
  .prod-head h3{font-size:1.05rem}
  .prod-head small{font-size:.78rem}
  .prod-body{padding:8px 12px 16px}
  .prod-body p{font-size:.82rem}
  .prod-body .price-tag{font-size:.82rem}
}
/* จอแคบมากจริงๆ (ต่ำกว่า 340px) ค่อยเหลือคอลัมน์เดียว */
@media(max-width:340px){.prod-grid{grid-template-columns:1fr}}
.prod-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.25s;display:flex;flex-direction:column}
.prod-card:hover{transform:translateY(-6px)}
.prod-head{padding:26px 18px 20px;color:#fff;text-align:center;position:relative}
.prod-head::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:18px;background:#fff;border-radius:100% 100% 0 0/18px 18px 0 0}
.prod-head .minidrop{width:52px;height:64px;margin:0 auto 12px;background:radial-gradient(ellipse at 35% 30%,rgba(255,255,255,.85),rgba(255,255,255,.15) 60%,transparent);border:2px solid rgba(255,255,255,.6);border-radius:50% 50% 50% 50%/60% 60% 40% 40%}
/* ช่องรูปขวดสินค้า */
.prod-shot{margin:0 auto 12px;height:170px;display:flex;align-items:flex-end;justify-content:center}
.prod-shot .slot-art{margin:0 auto}
.prod-shot .slot-img{height:170px;width:auto;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.28))}
.prod-head h3{font-size:1.3rem;font-weight:700;letter-spacing:.5px}
.prod-head small{opacity:.9;font-family:'Sarabun'}
.prod-body{padding:8px 18px 20px;flex:1;display:flex;flex-direction:column}
.prod-body p{font-size:.9rem;color:#41604d;flex:1}
.prod-body .price-tag{margin-top:14px;font-family:'Prompt';font-weight:600;color:var(--green-deep);font-size:.9rem}
/* ลิงก์ไปหน้ารายละเอียด — ขึ้นเฉพาะสินค้าที่มีหน้าของตัวเองแล้ว */
.prod-more{display:inline-block;margin-top:10px;font-family:'Prompt';font-weight:600;font-size:.86rem;color:var(--blue-deep);border-bottom:1.5px solid transparent;transition:.2s}
.prod-more:hover{border-bottom-color:var(--blue-deep)}
.p-zenmax .prod-head{background:linear-gradient(150deg,#2E7D4C,var(--c-zenmax))}
.p-cabmax .prod-head{background:linear-gradient(150deg,#8347C4,var(--c-cabmax))}
.p-kingshark .prod-head{background:linear-gradient(150deg,#8A6034,var(--c-kingshark))}
.p-vamax .prod-head{background:linear-gradient(150deg,#34A94C,var(--c-vamax))}
.p-bionax .prod-head{background:linear-gradient(150deg,#7FAF2E,var(--c-bionax))}
.p-dronmax .prod-head{background:linear-gradient(150deg,#3E8FD9,var(--c-dronmax))}

.promo{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.promo-card{border-radius:var(--radius);padding:28px 24px;color:#fff;position:relative;overflow:hidden}
.promo-card.a{--tint:linear-gradient(130deg,var(--green-deep),var(--green-leaf));background:var(--tint)}
.promo-card.b{--tint:linear-gradient(130deg,var(--blue-deep),var(--blue-sky));background:var(--tint)}
/* เมื่อมีรูปโปรโมชัน main.js จะใส่รูปเป็นพื้นหลัง แล้วคลุมด้วยม่านสีแบรนด์
   เพื่อให้ตัวหนังสือยังอ่านออกชัดเจนไม่ว่ารูปจะสว่างหรือมืด */
.promo-card.has-photo{background-size:cover;background-position:center;background-repeat:no-repeat}
.promo-card.has-photo::before{content:"";position:absolute;inset:0;background:var(--tint);opacity:.85}
.promo-card > *{position:relative;z-index:1}
/* แบนเนอร์โปรเต็มความกว้างการ์ด (ภาพมีตัวหนังสือ ห้ามครอป) */
.promo-card{display:flex;flex-direction:column}
.promo-card .promo-img{margin:-28px -24px 20px;width:calc(100% + 48px);max-width:none;height:auto;aspect-ratio:16/9}
.promo-card .gift{align-self:flex-start}
.promo-card h3{font-size:1.4rem;margin-bottom:6px}
.promo-card .big{font-family:'Prompt';font-weight:800;font-size:2.4rem;color:var(--gold)}
.promo-card s{opacity:.7;font-size:1rem}
.promo-card p{font-size:.92rem;opacity:.95}
.promo-card .gift{display:inline-block;margin-top:10px;background:rgba(255,255,255,.18);border:1px dashed rgba(255,255,255,.6);padding:5px 14px;border-radius:999px;font-size:.85rem}
@media(max-width:820px){.promo{grid-template-columns:1fr}}

/* ===== 9. HOW-TO ========================================================= */
.howto .dose-wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.dose-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.dose-card header{background:linear-gradient(120deg,var(--blue-deep),var(--blue-sky));color:#fff;padding:14px 20px;font-family:'Prompt';font-weight:600;display:flex;align-items:center;gap:8px}
.dose-row{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;border-bottom:1px solid #EDF5EE;font-size:.95rem}
.dose-row:last-child{border-bottom:0}
.dose-row .w{display:flex;align-items:center;gap:8px;color:#33523f}
.dose-row .cc{font-family:'Prompt';font-weight:700;color:var(--blue-deep);background:#EAF4FF;padding:3px 14px;border-radius:999px}
.steps{list-style:none;counter-reset:step}
.steps li{counter-increment:step;position:relative;padding:0 0 22px 52px}
.steps li::before{content:counter(step);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;background:linear-gradient(140deg,var(--green-leaf),var(--green-deep));color:#fff;font-family:'Prompt';font-weight:700;display:flex;align-items:center;justify-content:center}
.steps li::after{content:"";position:absolute;left:17px;top:38px;bottom:2px;width:2px;background:#CFE7D4}
.steps li:last-child::after{display:none}
.steps li b{font-family:'Prompt';color:var(--green-deep)}
@media(max-width:820px){.howto .dose-wrap{grid-template-columns:1fr}}

/* ===== 9b. REVIEWS — รีวิวจากผู้ใช้จริง ================================== */
.reviews{background:linear-gradient(180deg,#E4F2E8 0%,#EEF7F0 100%)}
.rv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}
.rv-grid>*{min-width:0}
.rv{margin:0;background:#fff;border-radius:var(--radius);padding:22px 22px 18px;box-shadow:var(--shadow);
  border:1px solid #E1EFE3;display:flex;flex-direction:column;gap:12px;position:relative}
.rv-crop{align-self:flex-start;font-size:.8rem;font-weight:600;padding:3px 12px;border-radius:999px;background:#E6F4EA;color:var(--green-deep)}
.rv blockquote{margin:0;font-size:1.02rem;line-height:1.65;color:#1f3a2a;flex:1;position:relative;z-index:1}
.rv figcaption{display:flex;align-items:center;gap:10px;font-size:.88rem;font-weight:600;color:#33523f}
.rv-av{width:34px;height:34px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(140deg,var(--green-leaf),var(--green-deep));color:#fff;font-family:'Prompt';font-weight:700;font-size:.9rem}
.rv-short{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0}
.rv-short li{background:#fff;border:1px solid #D6E6DA;border-radius:999px;padding:8px 16px;font-size:.9rem;color:#1f3a2a;max-width:100%}
.rv-short span{color:#5b7a66;font-size:.82rem;white-space:nowrap}
.rv-note{margin-top:18px;font-size:.8rem;color:#5b7a66}

/* ===== 10. CONTACT ======================================================= */
.contact{background:linear-gradient(160deg,var(--green-deep),#0F5A2E);color:#fff}
.contact .section-title{color:#fff}
.contact .section-sub{color:#CDE8D4}
/* ใช้ flex ไม่ใช่ grid เพราะจำนวนช่องทางไม่คงที่ — ขึ้นกับว่ากรอกอะไรใน config.js
   grid แบบ 1fr จะยืดการ์ดจนกว้างเกินไปเวลามีแค่ 2 ช่องทาง
   flex + max-width + justify-content:center ทำให้สวยตั้งแต่ 1 ถึง 6 การ์ด */
.channel-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:36px}
.channel{flex:1 1 160px;max-width:210px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:22px 16px;text-align:center;transition:.2s}
.channel:hover{transform:translateY(-4px);background:rgba(255,255,255,.15)}
.channel .ic{width:52px;height:52px;border-radius:14px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;font-family:'Prompt';color:#fff}
.ic.line{background:#06C755}
.ic.fb{background:#1877F2}
.ic.tt{background:#000}
.ic.shp{background:#EE4D2D}
.ic.laz{background:linear-gradient(135deg,#0F146D,#F5076E)}
.ic.ig{background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF)}
.ic.mail{background:#EA4335}
.ic.tel{background:var(--gold);color:var(--ink)}
.channel h4{font-size:.95rem;margin-bottom:2px}
.channel p{font-size:.78rem;color:#BBDDC5;word-break:break-word}
/* ช่องทางที่ยังไม่ได้กรอกข้อมูลจริง จะถูกซ่อนโดย js/main.js */
.channel[hidden]{display:none}
.contact-info{display:flex;flex-wrap:wrap;gap:24px;font-size:.92rem;color:#D8EFDD}
.contact-info div b{font-family:'Prompt';color:#fff;display:block;margin-bottom:2px}

/* ===== 11. FOOTER & FLOATING LINE ======================================== */
footer{background:#0B2E19;color:#9CC7A8;text-align:center;padding:26px 20px;font-size:.85rem}
footer p{margin:0}
.foot-name{font-family:'Prompt';font-weight:600;color:#CFE7D4;font-size:.95rem;margin-bottom:8px!important}
.foot-sub{font-size:.78rem;opacity:.75;line-height:1.7}
.float-line{position:fixed;right:16px;bottom:16px;z-index:99;background:#06C755;color:#fff;font-family:'Prompt';font-weight:600;padding:13px 22px;border-radius:999px;box-shadow:0 8px 24px rgba(6,199,85,.45);display:flex;align-items:center;gap:8px;animation:pulse 2.4s infinite}
/* ยังไม่ได้กรอก LINE ID ใน config.js → ซ่อนปุ่มนี้ (ต้องเขียนทับ display:flex) */
.float-line[hidden]{display:none}
/* หน้า /order/ มีแถบสรุปยอดติดขอบล่าง ปุ่มนี้ต้องขยับขึ้นไม่ให้ทับกัน
   ความสูงแถบวัดจริงด้วย js/order.js แล้วส่งมาทาง --ord-bar-h */
.has-ord-bar .float-line{bottom:calc(var(--ord-bar-h, 0px) + 26px)}
@keyframes pulse{0%,100%{box-shadow:0 8px 24px rgba(6,199,85,.45)}50%{box-shadow:0 8px 24px rgba(6,199,85,.45),0 0 0 12px rgba(6,199,85,.12)}}

/* ===== 12. MOTION / REVEAL =============================================== */
.reveal{opacity:0;transform:translateY(24px);transition:.6s ease}
.reveal.on{opacity:1;transform:none}
/* ถ้า JS ไม่ทำงาน ต้องไม่ทำให้เนื้อหาหายทั้งหน้า */
.no-js .reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== 13. หน้ารายละเอียดสินค้า =========================================
   ใช้ร่วมกันได้ทุกสินค้า — สร้างหน้าใหม่โดยก๊อป products/vamax/index.html
   แล้วแก้เนื้อหา ไม่ต้องเขียน CSS เพิ่ม
   ------------------------------------------------------------------------ */
.crumb{font-size:.85rem;color:#4a6a55;padding:96px 0 0}
.crumb a:hover{color:var(--green-deep);text-decoration:underline}
.crumb span{opacity:.6;margin:0 6px}

.pd-hero{background:linear-gradient(180deg,#E8F4FF 0%,#EAF6EC 60%,var(--cream) 100%);padding:24px 0 48px}
.pd-top{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px;align-items:center}
.pd-shot{background:radial-gradient(ellipse at 50% 60%,#fff,rgba(255,255,255,0));border-radius:24px;padding:20px;text-align:center}
.pd-shot img{height:340px;width:auto;margin:0 auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.22))}
.pd-title{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;color:var(--green-deep);line-height:1.25}
.pd-sub{font-family:'Prompt';color:var(--c-vamax);font-weight:600;margin-top:4px}
.pd-lead{margin:14px 0 20px;color:#33523f}
.pd-facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.pd-facts span{background:#fff;border:1.5px solid var(--green-leaf);color:var(--green-deep);font-family:'Prompt';font-size:.8rem;font-weight:500;padding:6px 13px;border-radius:999px}

/* ตารางข้อมูล — ต้องเลื่อนแนวนอนได้บนมือถือ ไม่งั้นตารางจะดันหน้าเว็บล้นขอบจอ */
/* min-width:0 จำเป็นมาก — ลูกของ grid/flex มีค่าเริ่มต้นเป็น min-width:auto
   ทำให้กล่องนี้ยืดตามความกว้างตารางข้างในแทนที่จะหดแล้วให้เลื่อนแนวนอน
   ผลคือหน้าเว็บล้นขอบจอบนมือถือ ต้องกำหนดเป็น 0 เอง */
.pd-table-wrap{min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}
table.pd{width:100%;border-collapse:collapse;font-size:.92rem;min-width:420px}
table.pd caption{text-align:left;padding:14px 18px;font-family:'Prompt';font-weight:600;color:#fff;background:linear-gradient(120deg,var(--blue-deep),var(--blue-sky))}
table.pd th,table.pd td{padding:11px 18px;border-bottom:1px solid #EDF5EE;text-align:left;vertical-align:top}
table.pd thead th{background:var(--green-light);color:var(--green-deep);font-family:'Prompt';font-weight:600;font-size:.85rem}
table.pd tbody tr:last-child td{border-bottom:0}
table.pd td.num{font-family:'Prompt';font-weight:700;color:var(--blue-deep);white-space:nowrap}
table.pd th[scope=row]{font-weight:500;color:#33523f;width:38%}

.pd-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.pd-cards>*{min-width:0}
/* ส่วนราคา: ตารางราคาซ้าย ข้อมูลทะเบียนขวา — บนมือถือต้องเรียงลงมาเป็นแถวเดียว */
.pd-buy-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;align-items:start}
.pd-buy-grid>*{min-width:0}
@media(max-width:820px){.pd-buy-grid{grid-template-columns:1fr}}
.pd-card{background:#fff;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);border:1px solid #E1EFE3}
.pd-card h4{color:var(--green-deep);font-size:1rem;margin-bottom:8px}
.pd-card ul{list-style:none;font-size:.9rem;color:#41604d}
.pd-card li{padding:5px 0 5px 20px;position:relative}
.pd-card li::before{content:"•";position:absolute;left:4px;color:var(--green-leaf);font-weight:700}

/* กล่องคำเตือน — ใช้สีส้มอำพัน ไม่ใช่สีแดง เพราะเป็นคำแนะนำเพื่อความปลอดภัย
   ไม่ใช่การแจ้งข้อผิดพลาด สีแดงจะดูน่าตกใจเกินเหตุ */
.pd-warn{background:#FFF8E6;border:1px solid #F0D28A;border-left:5px solid var(--gold);border-radius:14px;padding:20px 22px}
.pd-warn h4{font-family:'Prompt';color:#7A5A10;margin-bottom:10px}
.pd-warn ol{margin-left:20px;font-size:.9rem;color:#5C4A22}
.pd-warn li{padding:4px 0}

.pd-buy{background:linear-gradient(130deg,var(--green-deep),var(--green-leaf));color:#fff;border-radius:var(--radius);padding:26px}
.pd-buy h3{font-size:1.25rem;margin-bottom:14px}
.pd-buy table{width:100%;border-collapse:collapse;font-size:.95rem}
.pd-buy th,.pd-buy td{padding:9px 6px;text-align:left;border-bottom:1px solid rgba(255,255,255,.18)}
.pd-buy thead th{font-family:'Prompt';font-size:.8rem;opacity:.85;font-weight:500}
.pd-buy tbody tr:last-child th,.pd-buy tbody tr:last-child td{border-bottom:0}
.pd-buy .price{font-family:'Prompt';font-weight:800;color:var(--gold);white-space:nowrap}
.pd-buy .gift{font-size:.8rem;opacity:.9}

.pd-labels{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.pd-labels figure{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.pd-labels img{width:100%;height:auto}
.pd-labels figcaption{padding:12px 16px;font-size:.85rem;color:#4a6a55}

/* หมายเหตุกรณีอัตราบนฉลากกับคำแนะนำของบริษัทไม่ตรงกันเป๊ะ
   ต้องอธิบายให้ชัด ไม่ปล่อยให้ลูกค้าเห็นตัวเลขสองชุดแล้วเดาเอง */
.pd-ratenote{margin-top:16px;background:#EAF4FF;border-left:4px solid var(--blue-sky);
  border-radius:10px;padding:12px 16px;font-size:.88rem;color:#284b6b}
.pd-cta{text-align:center;padding:8px 0 0}
@media(max-width:820px){
  .pd-top{grid-template-columns:1fr;text-align:center}
  .pd-facts{justify-content:center}
  .pd-shot img{height:250px}
  .crumb{padding-top:88px}
}

/* ===== 14. หน้าสั่งซื้อ / รายการ SKU =====================================
   ตารางราคาที่ลูกค้าเลือกจำนวนได้ แล้วคัดลอกรายการไปวางในแชท
   ------------------------------------------------------------------------ */
.ord-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}
.ord-search{flex:1 1 220px;min-width:0;padding:11px 16px;border:1.5px solid #CFE3D5;border-radius:999px;font-family:'Sarabun';font-size:.95rem;background:#fff;color:var(--ink)}
.ord-search:focus{outline:none;border-color:var(--green-leaf);box-shadow:0 0 0 3px rgba(63,174,73,.15)}
.ord-chips{display:flex;flex-wrap:wrap;gap:7px}
.ord-chip{font-family:'Prompt';font-size:.82rem;font-weight:500;padding:7px 14px;border-radius:999px;border:1.5px solid #CFE3D5;background:#fff;color:#41604d;cursor:pointer;transition:.15s}
.ord-chip:hover{border-color:var(--green-leaf)}
.ord-chip[aria-pressed="true"]{background:var(--green-deep);border-color:var(--green-deep);color:#fff}

/* ห้ามใส่ overflow ที่กล่องนี้ — overflow-x:auto จะทำให้ overflow-y กลายเป็น auto
   ตามไปด้วย กล่องจะกลายเป็น scroll container แล้วหัวตาราง sticky จะไปเกาะกล่อง
   แทนที่จะเกาะจอ ผลคือเลื่อนแล้วหัวตารางหายไป
   บนมือถือใช้วิธีซ่อนคอลัมน์ SKU แทนการเลื่อนแนวนอน (ดู media query ท้ายส่วนนี้) */
.ord-wrap{min-width:0;border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}
table.ord{width:100%;border-collapse:collapse;font-size:.92rem;min-width:640px}
table.ord thead th{position:sticky;top:74px;z-index:2;background:var(--green-light);color:var(--green-deep);font-family:'Prompt';font-weight:600;font-size:.82rem;padding:12px 14px;text-align:left;white-space:nowrap}
table.ord td{padding:11px 14px;border-bottom:1px solid #EDF5EE;vertical-align:middle}
table.ord tbody tr:last-child td{border-bottom:0}
table.ord tbody tr.on{background:#F2FBF4}
table.ord tr[hidden]{display:none}
/* ช่องสินค้า = รูปย่อ + ข้อความ เรียงกันในแนวนอน
   วางรูปไว้ในช่องเดียวกับชื่อ ไม่แยกเป็นคอลัมน์ใหม่ เพราะบนมือถือ
   พื้นที่แนวนอนเหลือน้อยมากอยู่แล้ว เพิ่มคอลัมน์จะทำให้ตารางล้นจอ */
.ord-item{display:flex;align-items:center;gap:11px;min-width:0}
.ord-thumb{flex:0 0 auto;width:56px;height:56px;border-radius:12px;background:linear-gradient(150deg,#F2F9F3,#E4F1E7);
           border:1px solid #E1EFE3;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:4px}
.ord-thumb img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.ord-thumb-ph{font-size:1.3rem;opacity:.45}
.ord-item-txt{min-width:0}
.ord-name-sku{display:none;font-family:'Prompt';font-weight:600;font-size:.75rem;color:var(--blue-deep);margin-top:2px}
.ord-sku{font-family:'Prompt';font-weight:600;font-size:.82rem;color:var(--blue-deep);white-space:nowrap}
.ord-name{color:#33523f}
/* พื้นที่ที่พ่นได้ — เกษตรกรคิดเป็นไร่ ไม่ได้คิดเป็นลิตร ตัวเลขนี้จึงช่วยตัดสินใจได้เร็ว */
.ord-area{display:inline-block;margin-top:3px;font-size:.76rem;color:#1B5E20;background:#E8F7EC;
  border:1px solid #BFE3C8;padding:2px 9px;border-radius:999px}
.ord-gift{display:inline-block;margin-top:3px;font-size:.76rem;color:#7A5A10;background:#FFF8E6;border:1px solid #F0D28A;padding:2px 9px;border-radius:999px}
.ord-price{font-family:'Prompt';font-weight:700;color:var(--green-deep);white-space:nowrap;text-align:right}

/* ปุ่มเพิ่ม/ลดจำนวน — ขนาด 38px เพื่อให้กดง่ายด้วยนิ้วบนมือถือ */
.ord-qty{display:flex;align-items:center;gap:5px;justify-content:flex-end}
.ord-qty button{width:34px;height:34px;border-radius:50%;border:1.5px solid #CFE3D5;background:#fff;color:var(--green-deep);font-size:1.1rem;font-weight:700;line-height:1;cursor:pointer;flex:0 0 auto;transition:.15s}
.ord-qty button:hover:not(:disabled){border-color:var(--green-leaf);background:var(--green-light)}
.ord-qty button:disabled{opacity:.35;cursor:default}
.ord-qty input{width:46px;height:34px;text-align:center;border:1.5px solid #CFE3D5;border-radius:10px;font-family:'Prompt';font-weight:600;font-size:.95rem;color:var(--ink);background:#fff;-moz-appearance:textfield}
.ord-qty input::-webkit-outer-spin-button,.ord-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.ord-empty{padding:34px 18px;text-align:center;color:#4a6a55}

/* แถบสรุปยอด — ลอยติดขอบล่างจอเพื่อให้เห็นยอดรวมตลอดเวลาที่เลือกของ */
.ord-bar{position:sticky;bottom:0;z-index:20;margin-top:18px;background:linear-gradient(130deg,var(--green-deep),var(--green-leaf));color:#fff;border-radius:var(--radius);padding:16px 20px;box-shadow:0 -6px 24px rgba(20,60,35,.18)}
.ord-bar[hidden]{display:none}
.ord-bar-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.ord-total{font-family:'Prompt';font-weight:800;font-size:1.5rem;color:var(--gold)}
.ord-count{font-size:.85rem;opacity:.9}
.ord-acts{display:flex;flex-wrap:wrap;gap:8px}
.ord-btn{font-family:'Prompt';font-weight:600;font-size:.88rem;padding:10px 18px;border-radius:999px;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.15s}
.ord-btn-main{background:#fff;color:var(--green-deep)}
.ord-btn-main:hover{transform:translateY(-1px)}
.ord-btn-ghost{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.4)}
.ord-btn-ghost:hover{background:rgba(255,255,255,.26)}
.ord-note{margin-top:10px;font-size:.8rem;opacity:.9}
.ord-out{margin-top:12px;width:100%;min-height:120px;border-radius:12px;border:0;padding:12px 14px;font-family:'Sarabun';font-size:.85rem;line-height:1.6;resize:vertical}
.ord-out[hidden]{display:none}
/* มือถือ: ซ่อนคอลัมน์ SKU ย้ายไปแสดงใต้ชื่อสินค้าแทน ตารางจะได้พอดีจอ
   ไม่ต้องเลื่อนแนวนอน — เดิมพอกดปุ่ม + ตารางจะเลื่อนตามจนชื่อสินค้าหลุดจอ */
@media(max-width:720px){
  table.ord{min-width:0;font-size:.88rem}
  table.ord thead th:first-child,table.ord tbody td:first-child{display:none}
  .ord-name-sku{display:block}
  table.ord thead th,table.ord td{padding:10px 9px}
  .ord-thumb{width:48px;height:48px;border-radius:10px}
  .ord-item{gap:9px}
  .ord-qty{gap:4px}
  .ord-qty button{width:32px;height:32px}
  .ord-qty input{width:40px;height:32px}
}
/* จอเล็กมาก (iPhone SE และ Android รุ่นเล็ก กว้าง 320px) — บีบปุ่มและช่องไฟอีกชั้น
   ไม่งั้นตารางจะดันหน้าล้นขอบจอ */
@media(max-width:400px){
  table.ord{font-size:.82rem}
  table.ord thead th,table.ord td{padding:9px 6px}
  .ord-name-sku{font-size:.7rem}
  .ord-qty{gap:3px}
  .ord-qty button{width:28px;height:28px;font-size:1rem}
  .ord-qty input{width:34px;height:28px;font-size:.85rem}
  .ord-gift,.ord-area{font-size:.7rem;padding:1px 7px}
  .ord-thumb{width:34px;height:34px;border-radius:8px;padding:2px}
  .ord-item{gap:6px}
  table.ord thead th,table.ord td{padding:9px 4px}
  .ord-qty button{width:26px;height:26px;font-size:.95rem}
  .ord-qty input{width:30px;height:26px;font-size:.8rem}
}
@media(max-width:560px){
  .ord-bar{padding:14px}
  .ord-total{font-size:1.25rem}
  .ord-acts{width:100%}
  .ord-btn{flex:1 1 auto;justify-content:center}
}

/* ===== 15. เอกสารขึ้นทะเบียน / ผลวิเคราะห์ ===============================
   ใช้ทั้งหน้า /certificates/ และส่วน "เอกสารรับรอง" ในหน้าสินค้า
   ========================================================================== */
.cert-list{display:grid;gap:22px}
.cert{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:22px;align-items:start;
  background:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);border:1px solid #E1EFE3}
.cert>*{min-width:0}
.cert-wide{grid-template-columns:minmax(0,1fr)}
.cert h3{font-family:'Prompt',sans-serif;color:var(--green-deep);font-size:1.2rem;margin-bottom:2px}
.cert-kind{display:inline-block;font-size:.78rem;font-weight:600;padding:3px 10px;border-radius:999px;
  background:#E6F4EA;color:var(--green-deep);margin-bottom:10px}
.cert-kind.lab{background:#E8F1FF;color:#1B4F8C}
.cert dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;font-size:.9rem;margin:12px 0 0}
.cert dt{color:#4a6a55}
.cert dd{margin:0;color:#1f3a2a;font-weight:500;overflow-wrap:anywhere}
.cert-no{font-family:'Prompt',sans-serif;font-size:1.05rem;color:var(--green-deep)}
.cert-note{margin-top:12px;font-size:.84rem;color:#4a6a55}
.cert-pending{margin-top:12px;font-size:.86rem;background:#FFF7E6;border-left:4px solid #E0A526;
  padding:10px 14px;border-radius:8px;color:#5C4A22}
.cert-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.cert-wide .cert-docs{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));margin-top:16px}
.cert-docs a{display:block;border-radius:10px;overflow:hidden;border:1px solid #D6E6DA;background:#fafafa;
  transition:box-shadow .2s,transform .2s}
.cert-docs a:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.cert-docs img{width:100%;height:auto;display:block}
.cert-docs figcaption{font-size:.8rem;color:#4a6a55;padding:6px 2px 0;text-align:center}
.cert-more{display:inline-block;margin-top:14px;font-weight:600;color:var(--green-deep)}
.cert-more:hover{text-decoration:underline}
.trust-card a{color:inherit}
.trust-card .more{display:inline-block;margin-top:6px;font-size:.82rem;font-weight:600;color:var(--green-deep)}
.trust-card-link{transition:box-shadow .2s,transform .2s}
.trust-card-link:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
@media (max-width:760px){
  .cert{grid-template-columns:minmax(0,1fr);padding:18px}
  .cert-docs{grid-template-columns:minmax(0,1fr)}
}

/* ===== PRINT ============================================================= */
@media print{
  .nav,.float-line,.hero-actions,.skip-link{display:none!important}
  body{background:#fff}
  .reveal{opacity:1;transform:none}
}
