/* ==========================================================================
   S-KHAM Import–Export Co., Ltd  —  Design System
   Cream / Dark Green / Gold
   ========================================================================== */

/* ---------- Tokens ---------- */
:root{
  --cream:        #F1F3D6;
  --cream-soft:   #F7F8E9;
  --cream-deep:   #E6E9C2;
  --paper:        #FBFCF3;

  --green:        #1E3D31;
  --green-deep:   #14291F;
  --green-mid:    #2C5344;
  --green-soft:   #4A7160;
  --green-tint:   #DCE4D3;

  --gold:         #B8860B;
  --gold-bright:  #D2A73F;
  --gold-deep:    #8C6408;
  --gold-pale:    #EBD9A6;

  --ink:          #16261F;
  --ink-soft:     #3D5449;
  --line:         rgba(30,61,49,.16);

  --display: "Playfair Display", "Times New Roman", Georgia, serif;
  --body: "Poppins", "Segoe UI", system-ui, -apple-system, sans-serif;

  --maxw: 1240px;
  --gutter: clamp(20px, 5vw, 64px);
  --radius: 4px;
  --shadow-sm: 0 2px 10px rgba(20,41,31,.06);
  --shadow-md: 0 14px 40px -18px rgba(20,41,31,.35);
  --shadow-lg: 0 30px 70px -30px rgba(20,41,31,.5);
  --ease: cubic-bezier(.22,.61,.36,1);
  --hdr: 96px;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:var(--body);
  font-size:16.5px;
  line-height:1.72;
  color:var(--ink-soft);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;}
ul{margin:0;padding:0;list-style:none;}

h1,h2,h3,h4{
  font-family:var(--display);
  color:var(--green);
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.012em;
  margin:0 0 .5em;
}
h1{font-size:clamp(2.6rem,6.4vw,5.2rem);}
h2{font-size:clamp(2.1rem,4.4vw,3.5rem);}
h3{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.2;}
h4{font-size:1.06rem;font-family:var(--body);font-weight:600;letter-spacing:0;}
p{margin:0 0 1.15em;}
p:last-child{margin-bottom:0;}

::selection{background:var(--green);color:var(--cream);}

/* ---------- Layout ---------- */
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.section{padding:clamp(64px,9vw,124px) 0;}
.section--tight{padding:clamp(48px,6vw,80px) 0;}
.grid{display:grid;gap:clamp(28px,4vw,56px);}
.g2{grid-template-columns:repeat(2,1fr);}
.g3{grid-template-columns:repeat(3,1fr);}
.g4{grid-template-columns:repeat(4,1fr);}
@media(max-width:940px){.g3,.g4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:720px){.g2,.g3,.g4{grid-template-columns:1fr;}}

.bg-green{background:var(--green);color:rgba(241,243,214,.82);}
.bg-green h1,.bg-green h2,.bg-green h3{color:var(--cream-soft);}
.bg-deep{background:var(--green-deep);color:rgba(241,243,214,.78);}
.bg-deep h1,.bg-deep h2,.bg-deep h3{color:var(--cream-soft);}
.bg-paper{background:var(--paper);}
.bg-soft{background:var(--cream-soft);}

/* ---------- Type helpers ---------- */
.eyebrow{
  font-size:.7rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;
  color:var(--gold-deep);display:flex;align-items:center;gap:12px;margin:0 0 20px;
}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--gold);flex:none;}
.bg-green .eyebrow,.bg-deep .eyebrow{color:var(--gold-bright);}
.bg-green .eyebrow::before,.bg-deep .eyebrow::before{background:var(--gold-bright);}
.eyebrow--center{justify-content:center;}

.lead{font-size:clamp(1.02rem,1.4vw,1.16rem);line-height:1.8;color:var(--ink-soft);}
.bg-green .lead,.bg-deep .lead{color:rgba(241,243,214,.8);}
.muted{color:rgba(61,84,73,.72);}
.center{text-align:center;}
.measure{max-width:66ch;}
.measure-sm{max-width:52ch;}
.center .eyebrow{justify-content:center;}
.center .measure,.center .measure-sm{margin-inline:auto;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 34px;border-radius:999px;border:1px solid transparent;
  font-size:.83rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  transition:all .35s var(--ease);white-space:nowrap;
}
.btn svg{width:15px;height:15px;transition:transform .35s var(--ease);}
.btn:hover svg{transform:translateX(4px);}
.btn--primary{background:var(--green);color:var(--cream-soft);box-shadow:var(--shadow-sm);}
.btn--primary:hover{background:var(--green-deep);transform:translateY(-2px);box-shadow:var(--shadow-md);}
.btn--gold{background:linear-gradient(120deg,var(--gold-bright),var(--gold));color:#231703;}
.btn--gold:hover{filter:brightness(1.07);transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(184,134,11,.75);}
.btn--ghost{border-color:var(--line);color:var(--green);}
.btn--ghost:hover{background:var(--green);color:var(--cream-soft);border-color:var(--green);}
.btn--light{border:1px solid rgba(235,217,166,.45);color:var(--cream-soft);}
.btn--light:hover{background:var(--cream-soft);color:var(--green);border-color:var(--cream-soft);}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}
.center .btn-row{justify-content:center;}

.link-arrow{
  display:inline-flex;align-items:center;gap:9px;font-size:.79rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);white-space:nowrap;
  padding-bottom:4px;border-bottom:1px solid rgba(184,134,11,.35);transition:.3s var(--ease);
}
.link-arrow svg{width:14px;height:14px;flex:none;}
.link-arrow:hover{color:var(--green);border-color:var(--green);gap:15px;}

/* ---------- Header ---------- */
.header{
  position:sticky;top:0;z-index:100;
  background:rgba(241,243,214,.0);
  transition:background .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);
  border-bottom:1px solid transparent;
}
.header__inner{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  height:var(--hdr);
}
.header--solid{
  background:rgba(247,248,233,.94);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom-color:var(--line);
  box-shadow:0 6px 26px -20px rgba(20,41,31,.6);
}
.brand{display:flex;align-items:center;gap:12px;flex:none;}
.brand img{height:66px;width:auto;transition:opacity .3s;}
.brand .logo-dark{display:none;}
.header--solid .brand .logo-light{display:none;}
.header--solid .brand .logo-dark{display:block;}

.nav{display:flex;align-items:center;gap:34px;}
.nav a{
  position:relative;font-size:.8rem;font-weight:500;letter-spacing:.13em;
  text-transform:uppercase;color:rgba(247,248,233,.86);padding:6px 0;transition:color .3s;
}
.header--solid .nav a{color:var(--green);}
.nav a::after{
  content:"";position:absolute;left:0;bottom:0;height:1px;width:0;
  background:var(--gold-bright);transition:width .35s var(--ease);
}
.header--solid .nav a::after{background:var(--gold);}
.nav a:hover::after,.nav a.is-active::after{width:100%;}
.nav a.is-active{color:var(--gold-bright);}
.header--solid .nav a.is-active{color:var(--gold-deep);}

.header .btn{padding:12px 26px;font-size:.74rem;}
.header--solid .btn--light{border-color:var(--green);color:var(--green);}
.header--solid .btn--light:hover{background:var(--green);color:var(--cream-soft);}

.burger{display:none;background:none;border:0;padding:8px;width:44px;height:44px;}
.burger span{display:block;height:1.8px;background:var(--cream-soft);margin:5px 0;border-radius:2px;transition:.35s var(--ease);}
.header--solid .burger span{background:var(--green);}
.burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.burger.is-open span:nth-child(2){opacity:0;}
.burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media(max-width:1020px){
  .burger{display:block;}
  .brand img{height:56px;}
  .nav{
    position:fixed;inset:var(--hdr) 0 auto 0;flex-direction:column;align-items:stretch;gap:0;
    background:var(--green);padding:12px var(--gutter) 34px;
    transform:translateY(-125%);transition:transform .45s var(--ease);
    box-shadow:var(--shadow-lg);max-height:calc(100vh - var(--hdr));overflow:auto;
  }
  .nav.is-open{transform:translateY(0);}
  .nav a,.header--solid .nav a{color:rgba(247,248,233,.9);padding:16px 0;border-bottom:1px solid rgba(235,217,166,.14);font-size:.9rem;}
  .nav .btn{margin-top:22px;justify-content:center;}
  .header--solid .nav .btn--light{border-color:rgba(235,217,166,.45);color:var(--cream-soft);}
}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:clamp(560px,92vh,900px);display:flex;flex-direction:column;justify-content:flex-end;
  margin-top:calc(-1 * var(--hdr));padding-top:var(--hdr);overflow:hidden;background:var(--green-deep);}
.hero__bg{position:absolute;inset:0;overflow:hidden;}
.hero__bg svg{position:absolute;inset:0;width:100%;height:100%;}
.hero__bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,41,31,.72) 0%,rgba(20,41,31,.28) 42%,rgba(20,41,31,.92) 100%);
}
.hero__inner{position:relative;z-index:2;width:100%;padding-bottom:clamp(52px,7vw,92px);padding-top:clamp(90px,12vw,140px);}
.hero h1{color:#fff;text-transform:uppercase;letter-spacing:-.02em;
  font-size:clamp(2.7rem,8.6vw,7rem);line-height:.94;text-shadow:0 8px 40px rgba(0,0,0,.35);margin-bottom:.28em;}
.hero__tag{color:var(--gold-bright);font-size:.74rem;font-weight:600;letter-spacing:.32em;
  text-transform:uppercase;margin-bottom:26px;display:flex;align-items:center;gap:14px;}
.hero__tag::before{content:"";width:46px;height:1px;background:var(--gold-bright);}
.hero p{color:rgba(255,255,255,.86);max-width:60ch;font-size:clamp(1rem,1.5vw,1.16rem);}
.hero__foot{
  position:relative;z-index:2;border-top:1px solid rgba(235,217,166,.2);
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
}
.hero__foot div{padding:26px 14px 6px 0;}
.hero__foot strong{display:block;font-family:var(--display);font-size:clamp(1.6rem,3vw,2.3rem);color:var(--gold-bright);line-height:1;}
.hero__foot span{display:block;margin-top:8px;font-size:.7rem;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.62);}
@media(max-width:720px){.hero__foot{grid-template-columns:repeat(2,1fr);gap:8px 0;}}

/* page hero (inner pages) */
.phero{position:relative;background:var(--green-deep);overflow:hidden;
  margin-top:calc(-1 * var(--hdr));padding:calc(var(--hdr) + clamp(70px,11vw,130px)) 0 clamp(58px,8vw,100px);}
.phero__bg{position:absolute;inset:0;}
.phero__bg svg{position:absolute;inset:0;width:100%;height:100%;}
.phero__bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,41,31,.86),rgba(20,41,31,.6));}
.phero__inner{position:relative;z-index:2;}
.phero h1{color:#fff;font-size:clamp(2.3rem,5.6vw,4.4rem);margin-bottom:.3em;}
.phero p{color:rgba(255,255,255,.8);max-width:60ch;}
.crumbs{display:flex;gap:10px;align-items:center;font-size:.72rem;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(235,217,166,.7);margin-bottom:22px;}
.crumbs a:hover{color:var(--gold-bright);}
.crumbs span{opacity:.5;}

/* ---------- Marquee / trust strip ---------- */
.strip{background:var(--green);border-block:1px solid rgba(235,217,166,.16);overflow:hidden;}
.strip__track{display:flex;gap:0;width:max-content;animation:slide 38s linear infinite;}
.strip:hover .strip__track{animation-play-state:paused;}
.strip__item{display:flex;align-items:center;gap:14px;padding:19px 40px;
  font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(241,243,214,.72);white-space:nowrap;}
.strip__item i{width:5px;height:5px;border-radius:50%;background:var(--gold-bright);flex:none;font-style:normal;}
@keyframes slide{to{transform:translateX(-50%);}}

/* ---------- Split feature ---------- */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(36px,6vw,84px);align-items:center;}
.split--rev .split__media{order:2;}
@media(max-width:900px){.split{grid-template-columns:1fr;}.split--rev .split__media{order:0;}}

.frame{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--green);
  aspect-ratio:4/3.2;box-shadow:var(--shadow-md);}
.frame svg{width:100%;height:100%;display:block;}
.frame--tall{aspect-ratio:3/3.7;}
.frame__badge{
  position:absolute;left:22px;bottom:22px;right:22px;
  background:rgba(20,41,31,.82);backdrop-filter:blur(8px);
  border:1px solid rgba(235,217,166,.22);padding:16px 20px;
}
.frame__badge strong{display:block;font-family:var(--display);color:var(--cream-soft);font-size:1.15rem;}
.frame__badge span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-bright);}

/* ---------- Cards ---------- */
.card{
  background:var(--paper);border:1px solid var(--line);padding:clamp(24px,3vw,36px);
  border-radius:var(--radius);position:relative;overflow:hidden;
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);
}
.card::before{content:"";position:absolute;left:0;top:0;height:2px;width:0;
  background:linear-gradient(90deg,var(--gold-bright),var(--gold));transition:width .5s var(--ease);}
.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:rgba(184,134,11,.4);}
.card:hover::before{width:100%;}
.card h3{margin-bottom:.45em;}
.card p{font-size:.94rem;}
.card__ico{width:52px;height:52px;margin-bottom:22px;color:var(--gold);}
.card__ico svg{width:100%;height:100%;}
.card__n{font-family:var(--display);font-size:2.6rem;color:rgba(184,134,11,.28);line-height:1;margin-bottom:14px;display:block;}

.card--dark{background:rgba(255,255,255,.045);border-color:rgba(235,217,166,.18);}
.card--dark:hover{border-color:rgba(235,217,166,.42);background:rgba(255,255,255,.075);}
.card--dark p{color:rgba(241,243,214,.72);}
.card--dark .card__ico{color:var(--gold-bright);}
.card--dark .card__n{color:rgba(235,217,166,.3);}

/* product cards */
.pcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;transition:.4s var(--ease);}
.pcard:hover{transform:translateY(-7px);box-shadow:var(--shadow-md);}
.pcard__art{aspect-ratio:4/2.9;background:var(--green);position:relative;overflow:hidden;}
.pcard__art svg{width:100%;height:100%;transition:transform .7s var(--ease);}
.pcard:hover .pcard__art svg{transform:scale(1.05);}
.pcard__dir{position:absolute;top:14px;right:14px;background:rgba(235,217,166,.94);color:#2b1f04;
  font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:999px;}
.pcard__body{padding:26px 26px 30px;flex:1;display:flex;flex-direction:column;}
.pcard__body h3{margin-bottom:.4em;}
.pcard__body p{font-size:.92rem;margin-bottom:18px;}
.pcard__list{margin-top:auto;display:flex;flex-wrap:wrap;gap:7px;}
.pcard__list li{font-size:.71rem;letter-spacing:.05em;background:var(--green-tint);color:var(--green);
  padding:5px 11px;border-radius:999px;}

/* ---------- Feature list ---------- */
.flist{display:grid;gap:2px;}
.frow{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start;}
.frow:first-child{border-top:1px solid var(--line);}
.frow__k{font-family:var(--display);font-size:1.5rem;color:var(--gold);line-height:1;padding-top:4px;}
.frow h4{margin-bottom:.35em;color:var(--green);}
.frow p{font-size:.94rem;margin:0;}
.bg-green .frow,.bg-deep .frow{border-color:rgba(235,217,166,.16);}
.bg-green .frow h4,.bg-deep .frow h4{color:var(--cream-soft);}
.bg-green .frow p,.bg-deep .frow p{color:rgba(241,243,214,.7);}
.bg-green .frow__k,.bg-deep .frow__k{color:var(--gold-bright);}

/* ---------- Stats ---------- */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.stats div{background:var(--cream-soft);padding:clamp(24px,3vw,38px);text-align:center;}
.stats strong{display:block;font-family:var(--display);font-size:clamp(2rem,3.6vw,3rem);color:var(--green);line-height:1;margin-bottom:8px;}
.stats span{font-size:.71rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);}
@media(max-width:720px){.stats{grid-template-columns:1fr;}}

/* ---------- Timeline / process ---------- */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;}
.steps::before{content:"";position:absolute;top:26px;left:8%;right:8%;height:1px;background:rgba(235,217,166,.28);}
.step{position:relative;text-align:center;padding:0 12px;}
.step i{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;
  background:var(--green-deep);border:1px solid rgba(235,217,166,.4);color:var(--gold-bright);
  font-family:var(--display);font-size:1.1rem;font-style:normal;margin:0 auto 20px;position:relative;z-index:2;}
.step h4{color:var(--cream-soft);margin-bottom:.4em;font-size:.98rem;}
.step p{font-size:.85rem;color:rgba(241,243,214,.66);}
@media(max-width:940px){.steps{grid-template-columns:repeat(2,1fr);gap:36px 0;}.steps::before{display:none;}}
@media(max-width:520px){.steps{grid-template-columns:1fr;}}

/* ---------- Table ---------- */
.table-wrap{overflow-x:auto;border:1px solid var(--line);background:var(--paper);}
table{width:100%;border-collapse:collapse;min-width:560px;font-size:.93rem;}
th,td{padding:16px 22px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;}
thead th{background:var(--green);color:var(--cream-soft);font-family:var(--body);font-weight:600;
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;}
tbody tr:last-child td{border-bottom:0;}
tbody tr:hover{background:rgba(184,134,11,.05);}
td strong{color:var(--green);font-weight:600;}

/* definition rows (company at a glance) */
.dl{display:grid;grid-template-columns:230px 1fr;border-top:1px solid var(--line);}
.dl dt,.dl dd{padding:16px 4px;border-bottom:1px solid var(--line);margin:0;}
.dl dt{font-weight:600;color:var(--green);font-size:.87rem;letter-spacing:.03em;}
.dl dd{color:var(--ink-soft);font-size:.95rem;}
@media(max-width:640px){.dl{grid-template-columns:1fr;}.dl dt{padding-bottom:2px;border-bottom:0;}}

/* ---------- Checklist ---------- */
.checks li{position:relative;padding-left:34px;margin-bottom:15px;font-size:.96rem;}
.checks li::before{
  content:"";position:absolute;left:0;top:.36em;width:19px;height:19px;border-radius:50%;
  border:1px solid var(--gold);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.3 5 8.7l4.6-5.2' fill='none' stroke='%23B8860B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat;
}
.bg-green .checks li,.bg-deep .checks li{color:rgba(241,243,214,.78);}
.bg-green .checks li::before,.bg-deep .checks li::before{border-color:var(--gold-bright);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.3 5 8.7l4.6-5.2' fill='none' stroke='%23EBD9A6' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}

/* ---------- Quote ---------- */
.quote{border-left:2px solid var(--gold);padding:6px 0 6px 30px;}
.quote p{font-family:var(--display);font-size:clamp(1.3rem,2.5vw,1.9rem);line-height:1.42;color:var(--green);}
.bg-green .quote p,.bg-deep .quote p{color:var(--cream-soft);}
.quote cite{display:block;margin-top:16px;font-style:normal;font-size:.74rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-deep);}
.bg-green .quote cite,.bg-deep .quote cite{color:var(--gold-bright);}

/* ---------- CTA band ---------- */
.cta{position:relative;background:var(--green-deep);overflow:hidden;text-align:center;
  padding:clamp(64px,9vw,120px) 0;}
.cta__bg{position:absolute;inset:0;opacity:.5;}
.cta__bg svg{width:100%;height:100%;}
.cta .wrap{position:relative;z-index:2;}
.cta h2{color:#fff;font-size:clamp(2rem,4.6vw,3.6rem);}
.cta p{color:rgba(255,255,255,.78);max-width:56ch;margin-inline:auto;}

/* ---------- Forms ---------- */
.form{display:grid;gap:20px;}
.field{display:grid;gap:8px;}
.field label{font-size:.76rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green);}
.field label .req{color:var(--gold-deep);}
.field input,.field select,.field textarea{
  width:100%;padding:14px 16px;font:inherit;font-size:.95rem;color:var(--ink);
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  transition:border-color .3s,box-shadow .3s,background .3s;
}
.field textarea{min-height:140px;resize:vertical;}
.field select{appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231E3D31' stroke-width='1.4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px;padding-right:44px;}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,134,11,.14);background:#fff;}
.field input::placeholder,.field textarea::placeholder{color:rgba(61,84,73,.4);}
.form__row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:640px){.form__row{grid-template-columns:1fr;}}
.form .btn{justify-content:center;width:100%;}
.form__note{font-size:.78rem;color:rgba(61,84,73,.6);text-align:center;}
.form__ok{
  display:none;background:rgba(30,61,49,.06);border:1px solid var(--line);border-left:2px solid var(--gold);
  padding:18px 22px;font-size:.92rem;color:var(--green);
}
.form__ok.is-on{display:block;}

/* contact info blocks */
.cinfo{display:grid;gap:26px;}
.cinfo__item{display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:start;}
.cinfo__item i{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);
  border-radius:50%;color:var(--gold);font-style:normal;}
.cinfo__item i svg{width:18px;height:18px;}
.cinfo__item h4{margin-bottom:.15em;}
.cinfo__item p,.cinfo__item a{font-size:.94rem;margin:0;}
.cinfo__item a:hover{color:var(--gold-deep);}

/* ---------- Accordion ---------- */
.acc{border-top:1px solid var(--line);}
.acc__item{border-bottom:1px solid var(--line);}
.acc__btn{width:100%;background:none;border:0;padding:22px 40px 22px 0;text-align:left;position:relative;
  font-family:var(--display);font-size:clamp(1.05rem,1.7vw,1.28rem);color:var(--green);line-height:1.3;}
.acc__btn::after{content:"";position:absolute;right:6px;top:50%;width:13px;height:13px;
  transform:translateY(-50%);transition:transform .35s var(--ease);
  background:
    linear-gradient(var(--gold),var(--gold)) center/100% 1.5px no-repeat,
    linear-gradient(var(--gold),var(--gold)) center/1.5px 100% no-repeat;}
.acc__item.is-open .acc__btn::after{transform:translateY(-50%) rotate(90deg);
  background:linear-gradient(var(--gold),var(--gold)) center/100% 1.5px no-repeat;}
.acc__panel{max-height:0;overflow:hidden;transition:max-height .45s var(--ease);}
.acc__panel p{padding:0 40px 24px 0;font-size:.95rem;}

/* ---------- Footer ---------- */
.footer{background:linear-gradient(160deg,#BE8C10,#A8770A 60%,#9A6C08);color:rgba(255,255,255,.9);}
.footer__top{display:grid;grid-template-columns:1.15fr .85fr .95fr 1.12fr;gap:clamp(28px,3.4vw,50px);
  padding:clamp(52px,7vw,86px) 0 clamp(38px,5vw,58px);}
@media(max-width:940px){.footer__top{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.footer__top{grid-template-columns:1fr;}}
.footer img{height:86px;width:auto;margin-bottom:22px;opacity:.96;}
.footer h4{color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:20px;}
.footer p,.footer li,.footer a{font-size:.9rem;line-height:1.9;color:rgba(255,255,255,.88);}
.footer li a{transition:.3s;display:inline-block;}
.footer li a:hover{color:#fff;transform:translateX(4px);}
.footer__bar{border-top:1px solid rgba(255,255,255,.22);padding:22px 0;display:flex;
  justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;font-size:.8rem;color:rgba(255,255,255,.82);}
.socials{display:flex;gap:12px;}
.socials a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.4);transition:.35s var(--ease);}
.socials a:hover{background:#fff;color:#A8770A;transform:translateY(-3px);}
.socials svg{width:16px;height:16px;}

/* ---------- Reveal on scroll ---------- */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.rv.is-in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none;}
  .strip__track{animation:none;}
  html{scroll-behavior:auto;}
}

/* ---------- Back to top ---------- */
.totop{position:fixed;right:22px;bottom:22px;z-index:90;width:46px;height:46px;border-radius:50%;
  background:var(--green);color:var(--cream-soft);border:0;display:grid;place-items:center;
  opacity:0;pointer-events:none;transition:.4s var(--ease);box-shadow:var(--shadow-md);}
.totop.is-on{opacity:1;pointer-events:auto;}
.totop:hover{background:var(--gold);color:#231703;transform:translateY(-3px);}
.totop svg{width:16px;height:16px;}

/* email chip inside a card */
.card__mail{
  display:flex;width:fit-content;align-items:center;gap:8px;margin-top:18px;
  font-size:.86rem;font-weight:600;color:var(--gold-deep);
  padding-bottom:3px;border-bottom:1px solid rgba(184,134,11,.35);transition:.3s var(--ease);
}
.card__mail::before{content:"";width:15px;height:15px;flex:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238C6408' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3Cpath d='m2 7 10 6 10-6'/%3E%3C/svg%3E") center/contain no-repeat;}
.card__mail:hover{color:var(--green);border-color:var(--green);}

/* inline links inside body copy */
.acc__panel p a,.frow p a,.cinfo__item p a{color:var(--gold-deep);border-bottom:1px solid rgba(184,134,11,.4);transition:.3s;}
.acc__panel p a:hover,.frow p a:hover{color:var(--green);border-color:var(--green);}

/* ---------- Accessibility ---------- */
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px;}
.bg-green :focus-visible,.bg-deep :focus-visible,.hero :focus-visible,.phero :focus-visible,
.footer :focus-visible{outline-color:var(--gold-pale);}
.skip:focus{
  left:16px !important;top:16px;z-index:200;
  background:var(--green);color:var(--cream-soft);
  padding:12px 20px;border-radius:999px;font-size:.8rem;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;
}

/* ---------- Print ---------- */
@media print{
  .header,.totop,.strip,.cta,.hero__bg,.phero__bg{display:none !important;}
  body{background:#fff;color:#000;font-size:11pt;}
  .section,.section--tight{padding:18px 0;}
  .rv{opacity:1 !important;transform:none !important;}
  .frame,.pcard__art{display:none;}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;}
}
