:root { --plum:#52213f; --cream:#f4efe8; --ink:#221a20; --line:rgba(82,33,63,.17); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:"Avenir Next","Segoe UI",Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
svg { display:block; }

.site-shell {
  position:relative; min-height:100svh; overflow:hidden; isolation:isolate;
  display:grid; grid-template-rows:auto 1fr auto; padding:0 clamp(22px,5vw,76px);
  background:radial-gradient(circle at 15% 0%,rgba(255,255,255,.88),transparent 33%),linear-gradient(135deg,#f8f4ee 0%,#efe7dc 100%);
}
.site-shell::before {
  content:""; position:absolute; inset:0; z-index:-2; opacity:.3; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E");
}
.ambient { position:absolute; z-index:-1; border-radius:999px; filter:blur(2px); pointer-events:none; }
.ambient-one { width:420px; height:420px; right:-220px; top:-210px; background:rgba(82,33,63,.13); }
.ambient-two { width:260px; height:260px; left:-160px; bottom:-160px; background:rgba(196,160,116,.18); }

.topbar { width:min(1400px,100%); margin:0 auto; height:clamp(80px,11vh,110px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:13px; font-size:18px; letter-spacing:.34em; font-weight:700; }
.brand-mark { position:relative; width:34px; height:34px; display:grid; place-items:center; }
.brand-mark i { position:absolute; width:26px; height:12px; border:1.8px solid var(--plum); border-radius:50%; }
.brand-mark i:nth-child(2) { transform:rotate(60deg); }
.brand-mark i:nth-child(3) { transform:rotate(120deg); }
.top-cta { display:inline-flex; align-items:center; gap:10px; color:var(--plum); font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.top-cta svg { width:18px; fill:none; stroke:currentColor; stroke-width:1.7; transition:transform .25s ease; }
.top-cta:hover svg { transform:translateX(4px); }

.hero { width:min(1400px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr); align-items:center; gap:clamp(40px,6vw,100px); padding:clamp(38px,6vh,72px) 0 clamp(28px,5vh,54px); }
.hero-copy { position:relative; z-index:2; }
.eyebrow { display:inline-flex; align-items:center; gap:10px; margin-bottom:22px; color:var(--plum); font-size:12px; font-weight:800; letter-spacing:.19em; text-transform:uppercase; }
.eyebrow svg { width:20px; fill:none; stroke:currentColor; stroke-width:1.35; }
h1 { margin:0; max-width:690px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(62px,7.2vw,112px); font-weight:600; line-height:.78; letter-spacing:-.055em; }
h1 span { display:block; margin-top:.18em; color:var(--plum); font-style:italic; font-weight:500; }
.lead { max-width:560px; margin:30px 0 26px; color:#665b62; font-size:clamp(15px,1.15vw,18px); line-height:1.75; }
.export-note { display:flex; align-items:center; gap:16px; margin-bottom:31px; }
.export-line { width:42px; height:1px; background:var(--plum); }
.export-note div { display:grid; gap:3px; }
.export-note strong { font-size:13px; letter-spacing:.07em; text-transform:uppercase; }
.export-note div>span { color:var(--plum); font-family:Georgia,"Times New Roman",serif; font-size:21px; font-style:italic; }

.market-area>p { margin:0 0 13px; color:#82767d; font-size:11px; font-weight:800; letter-spacing:.115em; text-transform:uppercase; }
.market-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; max-width:610px; }
.market-card { min-height:64px; padding:0 14px 0 17px; display:flex; justify-content:space-between; align-items:center; gap:8px; border:1px solid var(--line); border-radius:9px; background:rgba(255,255,255,.55); box-shadow:0 6px 24px rgba(72,45,55,.05); transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease; }
.market-name { font-size:clamp(12px,1vw,15px); font-weight:800; letter-spacing:-.025em; }
.market-arrow { width:27px; height:27px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; background:rgba(82,33,63,.08); }
.market-arrow svg { width:14px; fill:none; stroke:currentColor; stroke-width:1.8; }
.market-card:hover,.market-card:focus-visible { transform:translateY(-3px); background:var(--plum); color:#fff; box-shadow:0 14px 30px rgba(82,33,63,.18); outline:none; }
.market-card:hover .market-arrow,.market-card:focus-visible .market-arrow { background:rgba(255,255,255,.16); }

.hero-visual { position:relative; min-width:0; padding:0 28px 0 0; }
.image-frame { position:relative; height:min(66vh,690px); min-height:480px; overflow:hidden; border-radius:240px 240px 18px 18px; box-shadow:0 38px 80px rgba(56,31,46,.18); background:#d9c8b4; }
.image-frame::after { content:""; position:absolute; inset:0; background:linear-gradient(155deg,rgba(255,255,255,.12),transparent 45%,rgba(45,16,35,.13)); pointer-events:none; }
.image-frame img { width:100%; height:100%; object-fit:cover; object-position:58% center; display:block; }
.product-badge { position:absolute; z-index:2; right:18px; bottom:18px; display:flex; align-items:center; gap:12px; padding:13px 17px; border:1px solid rgba(255,255,255,.48); border-radius:9px; color:#fff; background:rgba(50,16,39,.82); backdrop-filter:blur(12px); box-shadow:0 12px 35px rgba(30,10,24,.25); }
.badge-dot { width:9px; height:9px; border-radius:50%; background:#e7c89c; box-shadow:0 0 0 5px rgba(231,200,156,.14); }
.product-badge div { display:grid; gap:3px; }
.product-badge strong { font-size:12px; letter-spacing:.055em; text-transform:uppercase; }
.product-badge small { color:#d9cad4; font-size:10px; }
.vertical-copy { position:absolute; right:0; top:50%; transform:translate(45%,-50%) rotate(90deg); color:rgba(82,33,63,.55); font-size:9px; font-weight:800; letter-spacing:.32em; white-space:nowrap; }

footer { width:min(1400px,100%); margin:0 auto; min-height:54px; display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--line); color:#7e7279; font-size:10px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
footer span:last-child { color:var(--plum); font-family:Georgia,"Times New Roman",serif; font-size:15px; font-style:italic; letter-spacing:.03em; text-transform:none; }

@media (max-width:900px) {
  .site-shell { overflow:visible; }
  .hero { grid-template-columns:1fr; gap:44px; }
  .hero-copy { padding-top:18px; }
  h1 { font-size:clamp(60px,13vw,92px); }
  .lead { max-width:620px; }
  .hero-visual { order:-1; padding:0; }
  .image-frame { height:min(55vh,560px); min-height:390px; border-radius:180px 180px 15px 15px; }
  .vertical-copy { display:none; }
}

@media (max-width:580px) {
  .site-shell { padding:0 18px; }
  .topbar { height:76px; }
  .brand { font-size:15px; letter-spacing:.25em; }
  .brand-mark { width:29px; height:29px; }
  .brand-mark i { width:23px; height:10px; }
  .top-cta { font-size:0; width:39px; height:39px; justify-content:center; border:1px solid var(--line); border-radius:50%; }
  .top-cta svg { width:18px; }
  .hero { padding-top:28px; gap:35px; }
  .hero-visual { order:0; }
  .image-frame { height:47vh; min-height:350px; border-radius:140px 140px 13px 13px; }
  .image-frame img { object-position:62% center; }
  h1 { font-size:clamp(54px,18vw,78px); }
  .eyebrow { margin-bottom:17px; }
  .lead { margin:24px 0 21px; font-size:15px; }
  .export-note { margin-bottom:25px; }
  .market-grid { grid-template-columns:1fr; }
  .market-card { min-height:58px; }
  .market-name { font-size:14px; }
  .product-badge { left:13px; right:13px; bottom:13px; justify-content:center; }
  footer { margin-top:10px; min-height:66px; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition-duration:.01ms!important; }
}
