/* ============================================================
   Outdoor Awaits — About Blocks
   All design styles scoped to .oa-section so they cannot leak
   ============================================================ */

:root{
  --oa-green-primary:#049638;
  --oa-green-mid:#2E7D32;
  --oa-green-dark:#0B4619;
  --oa-green-deep:#13612E;
  --oa-yellow:#FFCC1D;
  --oa-orange:#ED6A18;
  --oa-orange-warm:#FF8C00;
  --oa-blue:#0C6CCC;
  --oa-ink:#000000;
  --oa-ink-2:#1a1a1a;
  --oa-gray-1:#454545;
  --oa-gray-2:#676767;
  --oa-gray-3:#EEEEEE;
  --oa-gray-4:#F7F7F7;
  --oa-white:#FFFFFF;
  --oa-cream:#FBF7EE;
  --oa-paper:#FAF6EC;
  --oa-shadow-sm:0 2px 8px rgba(11,70,25,.06);
  --oa-shadow-md:0 10px 30px rgba(11,70,25,.10);
  --oa-shadow-lg:0 30px 60px rgba(11,70,25,.18);
  --oa-radius:14px;
  --oa-radius-lg:22px;
}

/* Root wrapper for every block */
.oa-section{
  font-family:'Karla',system-ui,-apple-system,sans-serif;
  color:var(--oa-ink-2);
  font-size:17px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  position:relative;
  padding:110px 0;
}

/* Reset only inside our scope */
.oa-section *,
.oa-section *::before,
.oa-section *::after{
  box-sizing:border-box;
}
.oa-section a{
  color:var(--oa-green-primary);
  text-decoration:none;
  transition:.2s ease;
}
.oa-section a:hover{ color:var(--oa-green-dark); }
.oa-section img{ max-width:100%; display:block; }
.oa-section p{ margin:0 0 18px; }
.oa-section p:last-child{ margin-bottom:0; }
.oa-section h1,.oa-section h2,.oa-section h3,.oa-section h4{
  margin:0;
  font-family:'Fraunces',serif;
}

.oa-section .oa-wrap{
  max-width:1240px;
  margin:0 auto;
  padding:0 28px;
}

/* ========== Section header (eyebrow / title / lede) ========== */
.oa-section .oa-section-header{ margin-bottom:60px; max-width:780px; }
.oa-section .oa-section-header.oa-center{ margin-left:auto; margin-right:auto; text-align:center; }
.oa-section .oa-eyebrow{
  display:inline-block;
  font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
  color:var(--oa-orange); margin-bottom:16px;
}
.oa-section .oa-eyebrow::before{ content:'§ '; color:var(--oa-green-primary); }
.oa-section .oa-title{
  font-weight:600;
  font-size:clamp(36px,5vw,60px);
  line-height:1.05;
  letter-spacing:-.025em;
  color:var(--oa-green-dark);
}
.oa-section .oa-title em{ font-style:italic; color:var(--oa-orange); font-weight:500; }
.oa-section .oa-lede{
  font-size:19px; color:var(--oa-gray-1); margin-top:20px;
  max-width:680px; line-height:1.6;
}

/* ========================================================
   HERO BLOCK
   ======================================================== */
.oa-hero{ padding:80px 0 120px; overflow:hidden; }
.oa-hero .oa-hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:60px;
  align-items:center;
}
.oa-hero .oa-hero-eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-size:13px; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:var(--oa-green-primary); margin-bottom:24px;
}
.oa-hero .oa-hero-eyebrow::before{
  content:''; width:34px; height:2px; background:var(--oa-orange);
}
.oa-hero .oa-hero-title{
  font-weight:600;
  font-size:clamp(48px,7vw,96px);
  line-height:.95;
  letter-spacing:-.035em;
  color:var(--oa-green-dark);
  margin-bottom:28px;
}
.oa-hero .oa-hero-title em{
  font-style:italic; font-weight:500;
  color:var(--oa-orange); position:relative;
}
.oa-hero .oa-hero-title em::after{
  content:''; position:absolute; left:0; right:0; bottom:6px; height:10px;
  background:var(--oa-yellow); opacity:.45; z-index:-1; border-radius:6px;
}
.oa-hero .oa-hero-lede{
  font-size:20px; line-height:1.55; color:var(--oa-gray-1);
  max-width:540px; margin-bottom:36px;
}
.oa-hero .oa-hero-meta{
  display:flex; gap:36px; flex-wrap:wrap; align-items:center;
  padding-top:28px; border-top:1px solid rgba(11,70,25,.12);
}
.oa-hero .oa-hero-meta-item small{
  display:block; font-size:11px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--oa-gray-2); margin-bottom:6px;
}
.oa-hero .oa-hero-meta-item strong{
  font-family:'Fraunces',serif; font-weight:600; font-size:20px; color:var(--oa-green-dark);
}
.oa-hero .oa-hero-photo-wrap{ position:relative; }
.oa-hero .oa-hero-photo{
  position:relative; aspect-ratio:4/5;
  border-radius:var(--oa-radius-lg);
  overflow:hidden;
  background:linear-gradient(135deg,#1a5728,#0B4619 60%,#000);
  box-shadow:var(--oa-shadow-lg);
  transform:rotate(-2deg);
}
.oa-hero .oa-hero-photo img{ width:100%; height:100%; object-fit:cover; }
.oa-hero .oa-hero-photo::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.4));
}
.oa-hero .oa-badge-since{
  position:absolute; top:-22px; right:-22px;
  width:130px; height:130px; border-radius:50%;
  background:var(--oa-yellow); color:var(--oa-green-dark);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  transform:rotate(12deg);
  box-shadow:var(--oa-shadow-md);
  z-index:3;
  font-family:'Fraunces',serif;
  animation:oa-spin 30s linear infinite;
}
.oa-hero .oa-badge-since::before{
  content:''; position:absolute; inset:8px;
  border:1.5px dashed var(--oa-green-dark); border-radius:50%;
}
.oa-hero .oa-badge-since small{
  font-size:10px; letter-spacing:.2em; font-weight:700;
  color:var(--oa-green-dark); font-family:'Karla',sans-serif;
}
.oa-hero .oa-badge-since b{
  font-size:34px; font-weight:800; letter-spacing:-.02em; line-height:1; margin:2px 0;
}
.oa-hero .oa-badge-since em{
  font-size:10px; letter-spacing:.18em; font-style:normal; font-weight:600;
  color:var(--oa-green-dark); font-family:'Karla',sans-serif; text-transform:uppercase;
}
@keyframes oa-spin{ to{ transform:rotate(372deg); } }

/* ========================================================
   STATS BLOCK
   ======================================================== */
.oa-stats{ background:var(--oa-green-dark); color:var(--oa-white); padding:54px 0; overflow:hidden; }
.oa-stats::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse at 20% 50%, rgba(255,204,29,.10), transparent 50%),
             radial-gradient(ellipse at 85% 80%, rgba(237,106,24,.08), transparent 50%);
  pointer-events:none;
}
.oa-stats .oa-stats-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:40px;
  position:relative; z-index:2;
}
.oa-stats .oa-stat{
  text-align:center;
  border-right:1px solid rgba(255,255,255,.12);
  padding:8px 0;
}
.oa-stats .oa-stat:last-child{ border-right:none; }
.oa-stats .oa-stat-num{
  font-family:'Fraunces',serif; font-weight:700;
  font-size:60px; line-height:1; letter-spacing:-.03em;
  color:var(--oa-yellow); margin-bottom:8px;
}
.oa-stats .oa-stat-label{
  font-size:13px; font-weight:600; letter-spacing:.16em;
  text-transform:uppercase; color:rgba(255,255,255,.85);
}

/* ========================================================
   STORY BLOCK
   ======================================================== */
.oa-story .oa-story-grid{
  display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:start;
}
.oa-story .oa-story-photo{
  position:sticky; top:120px;
  aspect-ratio:4/5; border-radius:var(--oa-radius-lg);
  overflow:hidden;
  background:linear-gradient(160deg,#2E7D32,#0B4619);
  box-shadow:var(--oa-shadow-md);
}
.oa-story .oa-story-photo img{ width:100%; height:100%; object-fit:cover; }
.oa-story .oa-story-tape{
  position:absolute; top:-14px; left:50%; transform:translateX(-50%) rotate(-3deg);
  width:120px; height:30px; background:rgba(255,204,29,.85);
  box-shadow:0 4px 8px rgba(0,0,0,.1); z-index:5;
}
.oa-story .oa-story-body p{
  margin-bottom:22px; font-size:18px; color:var(--oa-ink-2); line-height:1.75;
}
.oa-story .oa-story-body p.oa-dropcap:first-letter{
  font-family:'Fraunces',serif; font-weight:700;
  font-size:72px; line-height:.85; float:left;
  color:var(--oa-green-primary); padding:6px 12px 0 0;
}
.oa-story .oa-pullquote{
  margin:36px 0; padding:28px 32px;
  border-left:4px solid var(--oa-orange);
  background:rgba(255,204,29,.12);
  font-family:'Fraunces',serif;
  font-size:24px; font-style:italic; font-weight:500;
  line-height:1.45; color:var(--oa-green-dark);
  border-radius:0 12px 12px 0;
}
.oa-story .oa-signature{
  margin-top:36px; font-family:'Caveat',cursive;
  font-size:42px; color:var(--oa-green-primary); line-height:1;
}
.oa-story .oa-signature-label{
  display:block; color:var(--oa-gray-2); font-size:13px;
  letter-spacing:.1em; margin-top:6px; font-weight:600;
}

/* ========================================================
   TIMELINE BLOCK
   ======================================================== */
.oa-timeline{ background:var(--oa-cream); }
.oa-timeline .oa-timeline-grid{
  display:grid; grid-template-columns:repeat(5,1fr); gap:24px;
  position:relative; margin-top:40px;
}
.oa-timeline .oa-timeline-grid::before{
  content:''; position:absolute; top:50px; left:6%; right:6%; height:2px;
  background:repeating-linear-gradient(90deg,var(--oa-green-primary) 0 6px,transparent 6px 12px);
}
.oa-timeline .oa-tl-item{ text-align:center; position:relative; }
.oa-timeline .oa-tl-year{
  display:inline-block; background:var(--oa-green-dark); color:var(--oa-yellow);
  font-family:'Fraunces',serif; font-weight:700; font-size:18px;
  width:100px; height:100px; border-radius:50%;
  line-height:100px; position:relative; z-index:2;
  box-shadow:0 8px 24px rgba(11,70,25,.25);
  border:6px solid var(--oa-cream);
}
.oa-timeline .oa-tl-item:nth-child(2) .oa-tl-year{ background:var(--oa-orange); color:var(--oa-white); }
.oa-timeline .oa-tl-item:nth-child(3) .oa-tl-year{ background:var(--oa-green-primary); color:var(--oa-white); }
.oa-timeline .oa-tl-item:nth-child(4) .oa-tl-year{ background:var(--oa-yellow); color:var(--oa-green-dark); }
.oa-timeline .oa-tl-item:nth-child(5) .oa-tl-year{ background:var(--oa-green-dark); color:var(--oa-yellow); }
.oa-timeline .oa-tl-title{
  font-family:'Fraunces',serif; font-weight:600; font-size:18px;
  color:var(--oa-green-dark); margin:18px 0 8px;
}
.oa-timeline .oa-tl-text{ font-size:14px; color:var(--oa-gray-1); line-height:1.55; }

/* ========================================================
   CATEGORIES BLOCK
   ======================================================== */
.oa-categories .oa-cat-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
}
.oa-categories .oa-cat-card{
  background:var(--oa-white); border-radius:var(--oa-radius);
  padding:36px 30px;
  border:1px solid rgba(11,70,25,.08);
  transition:.3s ease;
  position:relative; overflow:hidden;
  text-decoration:none; color:var(--oa-ink-2);
  display:block;
}
.oa-categories .oa-cat-card::before{
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:var(--oa-green-primary);
  transform:scaleX(0); transform-origin:left; transition:.4s ease;
}
.oa-categories .oa-cat-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--oa-shadow-md);
  color:var(--oa-ink-2);
}
.oa-categories .oa-cat-card:hover::before{ transform:scaleX(1); }
.oa-categories .oa-cat-card:nth-child(2)::before{ background:var(--oa-orange); }
.oa-categories .oa-cat-card:nth-child(3)::before{ background:var(--oa-yellow); }
.oa-categories .oa-cat-card:nth-child(4)::before{ background:var(--oa-green-dark); }
.oa-categories .oa-cat-card:nth-child(5)::before{ background:var(--oa-blue); }
.oa-categories .oa-cat-card:nth-child(6)::before{ background:var(--oa-orange-warm); }
.oa-categories .oa-cat-icon{
  width:56px; height:56px; border-radius:14px;
  background:rgba(4,150,56,.1);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:20px; color:var(--oa-green-primary);
}
.oa-categories .oa-cat-card:nth-child(2) .oa-cat-icon{ background:rgba(237,106,24,.1); color:var(--oa-orange); }
.oa-categories .oa-cat-card:nth-child(3) .oa-cat-icon{ background:rgba(255,204,29,.18); color:#b88a00; }
.oa-categories .oa-cat-card:nth-child(4) .oa-cat-icon{ background:rgba(11,70,25,.1); color:var(--oa-green-dark); }
.oa-categories .oa-cat-card:nth-child(5) .oa-cat-icon{ background:rgba(12,108,204,.1); color:var(--oa-blue); }
.oa-categories .oa-cat-card:nth-child(6) .oa-cat-icon{ background:rgba(255,140,0,.1); color:var(--oa-orange-warm); }
.oa-categories .oa-cat-icon svg{ width:28px; height:28px; }
.oa-categories .oa-cat-title{
  font-weight:600; font-size:24px; color:var(--oa-green-dark);
  letter-spacing:-.015em; margin-bottom:12px;
}
.oa-categories .oa-cat-text{
  font-size:15px; color:var(--oa-gray-1); margin-bottom:16px; line-height:1.55;
}
.oa-categories .oa-cat-link{
  font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--oa-green-primary);
  display:inline-flex; align-items:center; gap:6px;
}
.oa-categories .oa-cat-card:hover .oa-cat-link{ gap:12px; color:var(--oa-green-dark); }

/* ========================================================
   CAMPFIRE BLOCK
   ======================================================== */
.oa-campfire{
  background:linear-gradient(135deg,#0B4619 0%,#000 100%);
  color:var(--oa-white); overflow:hidden;
}
.oa-campfire::before{
  content:''; position:absolute;
  bottom:-200px; right:-200px; width:600px; height:600px; border-radius:50%;
  background:radial-gradient(circle,rgba(237,106,24,.18),transparent 70%);
  pointer-events:none;
}
.oa-campfire::after{
  content:''; position:absolute;
  top:-150px; left:-150px; width:500px; height:500px; border-radius:50%;
  background:radial-gradient(circle,rgba(255,204,29,.08),transparent 70%);
  pointer-events:none;
}
.oa-campfire .oa-campfire-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;
  position:relative; z-index:2;
}
.oa-campfire .oa-title{ color:var(--oa-white); }
.oa-campfire .oa-title em{ color:var(--oa-yellow); }
.oa-campfire p{ font-size:18px; color:rgba(255,255,255,.85); line-height:1.7; }
.oa-campfire .oa-eyebrow{ color:var(--oa-orange); }
.oa-campfire .oa-campfire-photo{
  aspect-ratio:1/1; border-radius:24px; overflow:hidden;
  background:linear-gradient(135deg,#3a1a08,#0B4619);
  box-shadow:0 30px 80px rgba(0,0,0,.4),0 0 0 8px rgba(255,255,255,.05);
  transform:rotate(2deg); position:relative;
}
.oa-campfire .oa-campfire-photo img{ width:100%; height:100%; object-fit:cover; }

/* ========================================================
   GEAR BLOCK
   ======================================================== */
.oa-gear{ background:var(--oa-gray-4); }
.oa-gear .oa-gear-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:22px;
}
.oa-gear .oa-gear-card{
  background:var(--oa-white); border-radius:var(--oa-radius);
  overflow:hidden; border:1px solid rgba(11,70,25,.06);
  transition:.3s ease;
}
.oa-gear .oa-gear-card:hover{ transform:translateY(-4px); box-shadow:var(--oa-shadow-md); }
.oa-gear .oa-gear-img{
  aspect-ratio:1/1;
  background:linear-gradient(135deg,var(--oa-gray-3),var(--oa-gray-4));
  overflow:hidden; position:relative;
}
.oa-gear .oa-gear-img img{ width:100%; height:100%; object-fit:cover; }
.oa-gear .oa-gear-body{ padding:22px; }
.oa-gear .oa-gear-small{
  font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--oa-orange); display:block;
}
.oa-gear .oa-gear-title{
  font-family:'Fraunces',serif; font-weight:600; font-size:18px;
  color:var(--oa-green-dark); margin:6px 0 10px;
}
.oa-gear .oa-gear-text{ font-size:14px; color:var(--oa-gray-1); line-height:1.55; }
.oa-gear .oa-gear-note{
  margin-top:50px; padding:30px;
  background:var(--oa-white); border-radius:var(--oa-radius);
  border-left:5px solid var(--oa-yellow);
  font-size:16px; color:var(--oa-gray-1); line-height:1.7;
}
.oa-gear .oa-gear-note strong{ color:var(--oa-green-dark); font-weight:700; }

/* ========================================================
   PLACES BLOCK
   ======================================================== */
.oa-places .oa-places-intro{
  display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:end;
  margin-bottom:60px;
}
.oa-places .oa-places-flags{
  display:flex; gap:14px; flex-wrap:wrap; margin-top:20px;
}
.oa-places .oa-flag-pill{
  background:var(--oa-white); border:1px solid rgba(11,70,25,.12);
  padding:8px 16px; border-radius:50px; font-size:14px; font-weight:600;
  color:var(--oa-green-dark); display:flex; align-items:center; gap:8px;
}
.oa-places .oa-flag-dot{ width:10px; height:10px; border-radius:50%; background:var(--oa-green-primary); }
.oa-places .oa-places-grid{
  display:grid; grid-template-columns:repeat(12,1fr);
  grid-auto-rows:130px; gap:18px;
}
.oa-places .oa-place{
  border-radius:var(--oa-radius); overflow:hidden; position:relative;
  background:linear-gradient(135deg,var(--oa-green-mid),var(--oa-green-dark));
  cursor:pointer; transition:.4s ease;
}
.oa-places .oa-place img{ width:100%; height:100%; object-fit:cover; transition:.6s ease; }
.oa-places .oa-place:hover img{ transform:scale(1.06); }
.oa-places .oa-place::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.75));
}
.oa-places .oa-place-label{
  position:absolute; left:20px; bottom:18px; color:var(--oa-white); z-index:2;
}
.oa-places .oa-place-label small{
  font-size:11px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--oa-yellow); font-weight:700;
}
.oa-places .oa-place-label b{
  display:block; font-family:'Fraunces',serif; font-weight:600;
  font-size:22px; margin-top:2px; letter-spacing:-.01em;
}
.oa-places .p1{ grid-column:span 6; grid-row:span 3; }
.oa-places .p2{ grid-column:span 6; grid-row:span 2; }
.oa-places .p3{ grid-column:span 3; grid-row:span 2; }
.oa-places .p4{ grid-column:span 3; grid-row:span 2; }
.oa-places .p5{ grid-column:span 4; grid-row:span 2; }
.oa-places .p6{ grid-column:span 4; grid-row:span 2; }
.oa-places .p7{ grid-column:span 4; grid-row:span 2; }

/* ========================================================
   VIDEO BLOCK
   ======================================================== */
.oa-video{ background:var(--oa-green-dark); color:var(--oa-white); }
.oa-video .oa-section-header{ margin-left:auto; margin-right:auto; text-align:center; max-width:680px; }
.oa-video .oa-title{ color:var(--oa-white); }
.oa-video .oa-title em{ color:var(--oa-yellow); }
.oa-video .oa-eyebrow{ color:var(--oa-orange-warm); }
.oa-video .oa-lede{ margin:20px auto 0; color:rgba(255,255,255,.85); }
.oa-video .oa-video-frame{
  max-width:920px; margin:0 auto; aspect-ratio:16/9;
  border-radius:18px; overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.5);
  background:#000; position:relative;
}
.oa-video .oa-video-frame iframe{ width:100%; height:100%; border:0; display:block; }
.oa-video .oa-video-caption{
  text-align:center; color:rgba(255,255,255,.65); font-size:14px;
  margin-top:24px; font-style:italic;
}

/* ========================================================
   GALLERY BLOCK
   ======================================================== */
.oa-gallery{ background:var(--oa-cream); }
.oa-gallery .oa-gallery-grid{
  display:grid; grid-template-columns:repeat(4,1fr);
  grid-auto-rows:200px; gap:14px;
}
.oa-gallery .oa-g-item{
  border-radius:var(--oa-radius); overflow:hidden;
  background:linear-gradient(135deg,#2E7D32,#0B4619);
  position:relative; cursor:pointer;
}
.oa-gallery .oa-g-item img{ width:100%; height:100%; object-fit:cover; transition:.5s ease; }
.oa-gallery .oa-g-item:hover img{ transform:scale(1.05); }
.oa-gallery .g1{ grid-row:span 2; }
.oa-gallery .g4{ grid-row:span 2; }
.oa-gallery .g6{ grid-column:span 2; }

/* ========================================================
   TRUST / E-E-A-T BLOCK
   ======================================================== */
.oa-trust{ background:var(--oa-white); }
.oa-trust .oa-trust-grid{
  display:grid; grid-template-columns:repeat(2,1fr); gap:24px;
}
.oa-trust .oa-trust-card{
  background:var(--oa-cream); border-radius:var(--oa-radius);
  padding:32px;
  display:flex; gap:22px; align-items:flex-start;
  border:1px solid rgba(11,70,25,.06);
}
.oa-trust .oa-trust-num{
  flex-shrink:0; width:48px; height:48px; border-radius:12px;
  background:var(--oa-green-primary); color:var(--oa-white);
  display:flex; align-items:center; justify-content:center;
  font-family:'Fraunces',serif; font-weight:700; font-size:20px;
}
.oa-trust .oa-trust-card:nth-child(2) .oa-trust-num{ background:var(--oa-orange); }
.oa-trust .oa-trust-card:nth-child(3) .oa-trust-num{ background:var(--oa-yellow); color:var(--oa-green-dark); }
.oa-trust .oa-trust-card:nth-child(4) .oa-trust-num{ background:var(--oa-green-dark); }
.oa-trust .oa-trust-card:nth-child(5) .oa-trust-num{ background:var(--oa-blue); }
.oa-trust .oa-trust-card:nth-child(6) .oa-trust-num{ background:var(--oa-orange-warm); }
.oa-trust .oa-trust-title{
  font-family:'Fraunces',serif; font-weight:600; font-size:20px;
  color:var(--oa-green-dark); margin-bottom:8px;
}
.oa-trust .oa-trust-text{ font-size:15px; color:var(--oa-gray-1); line-height:1.6; }
.oa-trust .oa-policy-row{
  margin-top:50px; display:flex; gap:18px; flex-wrap:wrap;
  padding:28px 0; border-top:1px solid rgba(11,70,25,.1);
}
.oa-trust .oa-policy-label{
  font-size:13px; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--oa-gray-2); display:flex; align-items:center; margin-right:10px;
}
.oa-trust .oa-policy-pill{
  background:var(--oa-gray-4); padding:10px 18px; border-radius:50px;
  font-size:14px; font-weight:600; color:var(--oa-green-dark);
  transition:.2s ease; border:1px solid transparent;
}
.oa-trust .oa-policy-pill:hover{
  background:var(--oa-green-primary); color:var(--oa-white);
  border-color:var(--oa-green-primary);
}

/* ========================================================
   PROCESS BLOCK
   ======================================================== */
.oa-process{ background:linear-gradient(180deg,var(--oa-cream),var(--oa-paper)); }
.oa-process .oa-process-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:30px;
  counter-reset:oa-step;
}
.oa-process .oa-process-step{
  background:var(--oa-white); border-radius:var(--oa-radius);
  padding:36px 30px; position:relative;
  border:1px solid rgba(11,70,25,.06);
  counter-increment:oa-step;
}
.oa-process .oa-process-step::before{
  content:counter(oa-step,decimal-leading-zero);
  position:absolute; top:24px; right:28px;
  font-family:'Fraunces',serif; font-weight:700; font-size:42px;
  color:rgba(4,150,56,.12); line-height:1;
}
.oa-process .oa-process-title{
  font-family:'Fraunces',serif; font-weight:600; font-size:22px;
  color:var(--oa-green-dark); margin-bottom:12px; letter-spacing:-.01em;
  max-width:80%;
}
.oa-process .oa-process-text{ font-size:15px; color:var(--oa-gray-1); line-height:1.6; }

/* ========================================================
   CTA / SOCIAL BLOCK
   ======================================================== */
.oa-cta{
  background:var(--oa-green-dark); color:var(--oa-white);
  text-align:center; overflow:hidden;
}
.oa-cta::before{
  content:''; position:absolute;
  top:-100px; left:50%; transform:translateX(-50%);
  width:1200px; height:1200px; border-radius:50%;
  background:radial-gradient(circle,rgba(255,204,29,.06),transparent 60%);
  pointer-events:none;
}
.oa-cta .oa-title{ color:var(--oa-white); margin-bottom:20px; }
.oa-cta .oa-title em{ color:var(--oa-yellow); }
.oa-cta .oa-cta-lead{
  font-size:19px; color:rgba(255,255,255,.85);
  max-width:620px; margin:0 auto 40px; line-height:1.6;
}
.oa-cta .oa-cta-buttons{
  display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-bottom:60px;
}
.oa-cta .oa-btn{
  padding:16px 32px; border-radius:50px;
  font-weight:700; font-size:15px; letter-spacing:.04em;
  transition:.25s ease;
  display:inline-flex; align-items:center; gap:10px;
  border:2px solid transparent;
}
.oa-cta .oa-btn-primary{ background:var(--oa-yellow); color:var(--oa-green-dark); }
.oa-cta .oa-btn-primary:hover{ background:var(--oa-white); color:var(--oa-green-dark); transform:translateY(-2px); }
.oa-cta .oa-btn-outline{ border-color:rgba(255,255,255,.3); color:var(--oa-white); }
.oa-cta .oa-btn-outline:hover{ border-color:var(--oa-yellow); color:var(--oa-yellow); }
.oa-cta .oa-social-row{
  display:flex; gap:18px; justify-content:center; flex-wrap:wrap;
  padding-top:50px; border-top:1px solid rgba(255,255,255,.12);
}
.oa-cta .oa-social-label{
  font-size:12px; font-weight:700; letter-spacing:.22em; text-transform:uppercase;
  color:rgba(255,255,255,.5);
  width:100%; text-align:center; margin-bottom:8px;
}
.oa-cta .oa-social{
  width:52px; height:52px; border-radius:50%;
  background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center;
  color:var(--oa-white); transition:.25s ease;
}
.oa-cta .oa-social:hover{
  background:var(--oa-yellow); color:var(--oa-green-dark);
  transform:translateY(-4px);
}
.oa-cta .oa-social svg{ width:20px; height:20px; }

/* ========================================================
   RESPONSIVE
   ======================================================== */
@media (max-width:980px){
  .oa-section{ padding:90px 0; }
  .oa-hero{ padding:60px 0 90px; }
  .oa-hero .oa-hero-grid{ grid-template-columns:1fr; gap:60px; }
  .oa-hero .oa-badge-since{ width:110px; height:110px; top:-15px; right:10px; }
  .oa-stats .oa-stats-grid{ grid-template-columns:repeat(2,1fr); gap:30px; }
  .oa-stats .oa-stat:nth-child(2){ border-right:none; }
  .oa-story .oa-story-grid{ grid-template-columns:1fr; gap:50px; }
  .oa-story .oa-story-photo{ position:static; max-width:400px; margin:0 auto; }
  .oa-timeline .oa-timeline-grid{ grid-template-columns:repeat(2,1fr); gap:50px 24px; }
  .oa-timeline .oa-timeline-grid::before{ display:none; }
  .oa-categories .oa-cat-grid{ grid-template-columns:repeat(2,1fr); }
  .oa-campfire .oa-campfire-grid{ grid-template-columns:1fr; gap:50px; }
  .oa-gear .oa-gear-grid{ grid-template-columns:repeat(2,1fr); }
  .oa-places .oa-places-intro{ grid-template-columns:1fr; gap:20px; }
  .oa-places .oa-places-grid{ grid-template-columns:repeat(6,1fr); grid-auto-rows:110px; }
  .oa-places .p1,.oa-places .p2{ grid-column:span 6; }
  .oa-places .p3,.oa-places .p4,.oa-places .p5,.oa-places .p6,.oa-places .p7{ grid-column:span 3; }
  .oa-gallery .oa-gallery-grid{ grid-template-columns:repeat(2,1fr); }
  .oa-gallery .g6{ grid-column:span 2; }
  .oa-trust .oa-trust-grid{ grid-template-columns:1fr; }
  .oa-process .oa-process-grid{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .oa-section{ padding:70px 0; }
  .oa-stats .oa-stats-grid{ grid-template-columns:1fr; gap:24px; }
  .oa-stats .oa-stat{ border-right:none; border-bottom:1px solid rgba(255,255,255,.12); padding-bottom:24px; }
  .oa-stats .oa-stat:last-child{ border-bottom:none; }
  .oa-categories .oa-cat-grid,
  .oa-gear .oa-gear-grid,
  .oa-gallery .oa-gallery-grid{ grid-template-columns:1fr; }
  .oa-gallery .g6{ grid-column:span 1; }
  .oa-places .oa-places-grid{ grid-template-columns:1fr; grid-auto-rows:180px; }
  .oa-places .p1,.oa-places .p2,.oa-places .p3,.oa-places .p4,
  .oa-places .p5,.oa-places .p6,.oa-places .p7{ grid-column:span 1; grid-row:span 1; }
  .oa-story .oa-pullquote{ font-size:19px; padding:22px; }
}
