/* FTS Editable Hover Effects */
.fts_editable_trigger:hover {
  background: linear-gradient(
    135deg,
    rgba(255, 140, 0, 0.08) 0%,
    rgba(255, 165, 0, 0.12) 100%
  );
  box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.2),
    0 2px 8px rgba(255, 140, 0, 0.15);
  border-radius: 4px;
  padding: 2px 4px;
  margin: -2px -4px;
}

.fts_editable_trigger:active {
  transform: translateY(1px);
  box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.3), 0 1px 4px rgba(255, 140, 0, 0.2);
}

.fts_editable {
  position: relative;
  display: inline-block;
}

.fts_editable:hover {
  background: linear-gradient(
    135deg,
    rgba(255, 140, 0, 0.08) 0%,
    rgba(255, 165, 0, 0.12) 100%
  );
  box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.2);
  border-radius: 4px;
}

/* Prevent link behavior for editable links */
a.fts_editable {
  pointer-events: none;
}

a.fts_editable .fts_editable_trigger {
  pointer-events: auto;
}

.language_switcher button {
  margin-top: 10px;
  color: white;
  border: none;
}

/* Bootstrap 5 dropdown on hover */
@media (min-width: 992px) {
  .navbar .dropdown-hover:hover > .dropdown-menu {
    display: block;
    margin-top: 0;
  }
  .navbar .dropdown-hover > .dropdown-toggle::after {
    transition: transform 0.2s ease;
  }
  .navbar .dropdown-hover:hover > .dropdown-toggle::after {
    transform: rotate(180deg);
  }
}


/* ============================================================
   KALEM VOĆE MILADINOVIĆ — style.css
   GLOBAL: used across all pages
   HOMEPAGE: homepage-specific sections
   ============================================================ */

/* ── GLOBAL: CSS Variables ── */
:root {
    --primary_color: #676B3B;
    --secondary_color: #4F4C4A;
    --third_color: #D2D396;
    --bg_beige: #EFE6D5;
    --text_main: #4F4C4A;
}
html { overflow-x:clip; }
body { font-family:'Open Sans',sans-serif; color:var(--text_main); background:#fdfdfd; margin:0; overflow-x:clip; }

/* ── GLOBAL: Header ── */
.header_solid {
    background-color: transparent;
    border-bottom: 1px solid rgba(103,107,59,0.08);
    transition: all 0.4s ease;
}
.header_scrolled {
    background: rgba(255,255,255,0.92);
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    box-shadow: 0 4px 20px rgba(103,107,59,0.08);
    border-bottom: 1px solid rgba(103,107,59,0.2);
    transition: all 0.4s ease;
}
.nav_link { color: var(--secondary_color); transition: color 0.3s; }
.nav_link:hover { color: var(--primary_color); }
.lang_active { color: var(--primary_color); font-weight: 900; }
.nav_icon span { background: var(--secondary_color); }

/* ── GLOBAL: CTA Buttons ── */
.cta_primary {
    background-color: var(--primary_color); color: white;
    padding: 16px 32px; border-radius: 9999px;
    font-weight: 700; transition: all 0.3s ease;
    display: inline-flex; align-items: center;
    text-transform: uppercase; letter-spacing: 1px;
    font-size: 0.875rem; text-decoration: none;
}
.cta_primary:hover { background-color: var(--secondary_color); color: white; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(103,107,59,0.3); }

.cta_link_white { position:relative; color:white; font-weight:600; padding-bottom:6px; display:inline-block; text-decoration:none; font-size:0.9rem; }
.cta_link_white::before { content:''; position:absolute; bottom:0; left:0; width:100%; height:2px; background:rgba(210,211,150,0.4); }
.cta_link_white::after  { content:''; position:absolute; bottom:0; left:0; width:0; height:2px; background:var(--third_color); transition:width 0.4s cubic-bezier(0.25,0.8,0.25,1); }
.cta_link_white:hover::after { width:100%; }
.cta_link_white:hover { color:var(--third_color); }

.cta_link_dark { position:relative; color:var(--secondary_color); font-weight:700; padding-bottom:6px; display:inline-block; text-decoration:none; font-size:0.875rem; }
.cta_link_dark::before { content:''; position:absolute; bottom:0; left:0; width:100%; height:3px; background:var(--third_color); }
.cta_link_dark::after  { content:''; position:absolute; bottom:0; left:0; width:0; height:3px; background:var(--primary_color); transition:width 0.4s cubic-bezier(0.25,0.8,0.25,1); }
.cta_link_dark:hover::after { width:100%; }
.cta_link_dark:hover { color:var(--primary_color); }

/* ── GLOBAL: Hamburger ── */
.nav_icon { width:30px; height:20px; position:relative; cursor:pointer; }
.nav_icon span { display:block; position:absolute; height:3px; width:100%; border-radius:9px; transition:.25s ease-in-out; }
.nav_icon span:nth-child(1){top:0} .nav_icon span:nth-child(2){top:8px} .nav_icon span:nth-child(3){top:16px}
.nav_icon.open span:nth-child(1){top:8px;transform:rotate(135deg)}
.nav_icon.open span:nth-child(2){opacity:0;left:-60px}
.nav_icon.open span:nth-child(3){top:8px;transform:rotate(-135deg)}

/* ── GLOBAL: Mobile Sidebar ── */
.mobile_sidebar { position:fixed; top:0; right:-100%; width:320px; height:100%; background:var(--primary_color); color:white; z-index:100; transition:0.5s cubic-bezier(0.77,0.2,0.05,1.0); overflow-y:auto; }
.mobile_sidebar.active { right:0; }
.accordion_content { max-height:0; overflow:hidden; transition:max-height 0.3s ease-out; }
.accordion_active .accordion_content { max-height:300px; }

/* ── GLOBAL: Dropdown ── */
.dropdown_menu { opacity:0; visibility:hidden; transform:translateY(10px); transition:all 0.3s ease; }
.dropdown_parent:hover .dropdown_menu { opacity:1; visibility:visible; transform:translateY(0); }

/* ── GLOBAL: Animations ── */
@keyframes fadeInUp { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }
.anim_delay_1{animation:fadeInUp 0.8s ease forwards}
.anim_delay_2{animation:fadeInUp 0.8s 0.15s ease both}
.anim_delay_3{animation:fadeInUp 0.8s 0.3s  ease both}
.anim_delay_4{animation:fadeInUp 0.8s 0.45s ease both}
.anim_delay_5{animation:fadeInUp 0.8s 0.6s  ease both}

/* ── PAGE HERO ── */
.oc_hero { background: var(--bg_beige); padding: 140px 0 72px; position: relative; overflow: hidden; }
.oc_hero::before { content: ''; position: absolute; inset: 0; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='110'%3E%3Cellipse cx='22' cy='18' rx='11' ry='3.5' fill='%23676B3B' opacity='0.07' transform='rotate(28 22 18)'/%3E%3Cellipse cx='95' cy='62' rx='9' ry='3' fill='%23676B3B' opacity='0.05' transform='rotate(-18 95 62)'/%3E%3Cellipse cx='52' cy='88' rx='8' ry='2.8' fill='%23676B3B' opacity='0.06' transform='rotate(58 52 88)'/%3E%3Cellipse cx='108' cy='24' rx='7' ry='2.4' fill='%23676B3B' opacity='0.05' transform='rotate(42 108 24)'/%3E%3Cellipse cx='14' cy='75' rx='6' ry='2.2' fill='%23676B3B' opacity='0.04' transform='rotate(-35 14 75)'/%3E%3C/svg%3E"); background-size: 130px 110px; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom,transparent 0%,black 20%,black 70%,transparent 100%); mask-image: linear-gradient(to bottom,transparent 0%,black 20%,black 70%,transparent 100%); }
.oc_ghost_word { position: absolute; right: -1%; top: 50%; transform: translateY(-50%); font-family: 'Lora', serif; font-size: clamp(80px,12vw,180px); font-weight: 700; color: transparent; -webkit-text-stroke: 1.5px rgba(103,107,59,0.09); line-height: 1; user-select: none; pointer-events: none; white-space: nowrap; }


/* ──────────────────────────────────────────────────────
   HOMEPAGE: Home Full Page sections
   ────────────────────────────────────────────────────── */

/* ── HOMEPAGE: Hero ── */
.hero_section { position:relative; width:100%; min-height:100vh; display:flex; flex-direction:column; }
.hero_top { position:relative; flex:0 0 auto; background:#f8f7f4; padding-top:140px; padding-bottom:0; text-align:center; z-index:2; overflow:hidden; }
.crosshair { display:none; }
.hero_top::before { content:''; position:absolute; inset:0; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='110'%3E%3Cellipse cx='22' cy='18' rx='11' ry='3.5' fill='%23676B3B' opacity='0.07' transform='rotate(28 22 18)'/%3E%3Cellipse cx='95' cy='62' rx='9' ry='3' fill='%23676B3B' opacity='0.05' transform='rotate(-18 95 62)'/%3E%3Cellipse cx='52' cy='88' rx='8' ry='2.8' fill='%23676B3B' opacity='0.06' transform='rotate(58 52 88)'/%3E%3Cellipse cx='108' cy='24' rx='7' ry='2.4' fill='%23676B3B' opacity='0.05' transform='rotate(42 108 24)'/%3E%3Cellipse cx='14' cy='75' rx='6' ry='2.2' fill='%23676B3B' opacity='0.04' transform='rotate(-35 14 75)'/%3E%3C/svg%3E"); background-size:130px 110px; pointer-events:none; -webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 60%,transparent 92%); mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 60%,transparent 92%); }
.hero_image_wrap { position:relative; width:100%; height:65vh; min-height:420px; overflow:hidden; }
.hero_image_wrap img { width:100%; height:100%; object-fit:cover; object-position:center 30%; display:block; }
.hero_fade_top { position:absolute; top:0; left:0; right:0; height:120px; background:linear-gradient(to bottom,#f8f7f4,transparent); z-index:2; pointer-events:none; }
.hero_overlay_bottom { position:absolute; bottom:0; left:0; right:0; height:55%; background:linear-gradient(to top,rgba(30,28,26,0.75) 0%,rgba(30,28,26,0.3) 60%,transparent 100%); z-index:2; pointer-events:none; }
.hero_image_text { position:absolute; bottom:0; left:0; right:0; z-index:3; padding:32px 48px; display:flex; justify-content:space-between; align-items:flex-end; }

/* ── HOMEPAGE: Counter ── */
.counter_section { background:white; padding:56px 48px; border-top:1px solid rgba(103,107,59,0.08); }
.counter_number { font-family:'Lora',serif; font-size:3rem; font-weight:700; color:var(--secondary_color); line-height:1; margin-bottom:8px; }
.counter_label { font-size:0.75rem; text-transform:uppercase; letter-spacing:2px; color:var(--primary_color); font-weight:600; opacity:0.7; }
.counter_divider { width:1px; background:rgba(103,107,59,0.15); align-self:stretch; margin:0 8px; }

/* ── HOMEPAGE: Seedlings ── */
.seedlings_section { background:white; padding:96px 0; overflow:hidden; }
.seedlings_grid { display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:14px; height:540px; }
.seedling_card { position:relative; border-radius:20px; overflow:hidden; background:#c8c2b8; border:1px solid rgba(0,0,0,0.07); display:block; text-decoration:none; }
.seedling_card img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.6s cubic-bezier(0.25,0.8,0.25,1), opacity 0.4s ease; }
.seedling_card:hover img { transform:scale(1.06); opacity:0.88; }
.seedling_card_overlay { position:absolute; bottom:0; left:0; right:0; padding:32px 20px 20px; background:linear-gradient(to top,rgba(20,20,18,0.7) 0%,rgba(20,20,18,0.2) 60%,transparent 100%); color:white; transition:padding 0.3s ease; }
.seedling_card:hover .seedling_card_overlay { padding-bottom:26px; }
.seedling_card_overlay small { display:block; font-family:'Open Sans',sans-serif; font-weight:400; font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; opacity:0.7; margin-bottom:4px; }
.seedling_card_overlay strong { font-family:'Lora',serif; font-size:1.15rem; font-weight:700; display:block; }
.seedling_card_arrow { display:inline-flex; align-items:center; gap:6px; font-size:0.65rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--third_color); margin-top:8px; opacity:0; transform:translateY(6px); transition:opacity 0.3s ease, transform 0.3s ease; }
.seedling_card:hover .seedling_card_arrow { opacity:1; transform:translateY(0); }
.seedling_large { grid-column:1; grid-row:1/3; }
.seedling_small { }

/* ── HOMEPAGE: Services ── */
.services_section { background:white; padding:96px 0; }
.service_row { display:flex; align-items:center; gap:0; border-top:1px solid rgba(103,107,59,0.12); padding:0; position:relative; overflow:hidden; cursor:pointer; text-decoration:none; color:inherit; }
.service_row:last-child { border-bottom: 1px solid rgba(103,107,59,0.12); }
.service_row::before { content:''; position:absolute; inset:0; background:var(--primary_color); transform:scaleX(0); transform-origin:left; transition:transform 0.5s cubic-bezier(0.77,0,0.175,1); z-index:0; }
.service_row:hover::before { transform:scaleX(1); }
.service_row > * { position:relative; z-index:1; transition:color 0.3s, opacity 0.3s; }
.service_row:hover .sr_num,.service_row:hover .sr_title,.service_row:hover .sr_desc { color:white; opacity:1; }
.service_row:hover .sr_tag { background:rgba(255,255,255,0.15); color:white; }
.service_row:hover .sr_arrow { background:white; color:var(--primary_color); }
.service_row:hover .sr_img_wrap { opacity:1; }
.sr_num { font-family:'Lora',serif; font-size:0.8rem; font-weight:700; color:var(--primary_color); opacity:0.5; min-width:80px; padding:32px 24px 32px 0; letter-spacing:2px; }
.sr_body { flex:1; padding:32px 24px; }
.sr_tag { display:inline-block; font-size:0.6rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--primary_color); background:rgba(103,107,59,0.1); border-radius:9999px; padding:2px 10px; margin-bottom:8px; transition:all 0.3s; }
.sr_title { font-family:'Lora',serif; font-size:clamp(18px,2.2vw,26px); font-weight:700; color:var(--secondary_color); line-height:1.2; }
.sr_desc { font-size:0.82rem; color:var(--text_main); opacity:0.6; margin-top:6px; max-width:360px; }
.sr_img_wrap { width:140px; height:90px; border-radius:12px; overflow:hidden; flex-shrink:0; margin:0 32px; opacity:0.6; transition:opacity 0.4s; }
.sr_img_wrap img { width:100%; height:100%; object-fit:cover; }
.sr_arrow { width:44px; height:44px; border-radius:9999px; background:var(--primary_color); color:white; display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-right:32px; transition:all 0.3s; }

/* ── HOMEPAGE: Rootstocks ── */
.rootstocks_section { background:var(--primary_color); padding:96px 0; overflow:hidden; }
.rs_eyebrow { font-size:0.65rem; font-weight:700; letter-spacing:4px; text-transform:uppercase; color:var(--third_color); margin-bottom:16px; }
.rs_heading { font-family:'Lora',serif; font-size: clamp(24px, 3vw, 38px); font-weight:700; color:white; line-height:1.2; margin-bottom:16px; }
.rs_subheading { font-size:0.9rem; color:rgba(255,255,255,0.6); line-height:1.8; max-width:620px; margin-bottom:48px; }
.rs_tabs { display:flex; gap:4px; background:rgba(255,255,255,0.1); border-radius:16px; padding:6px; margin-bottom:48px; width:fit-content; }
.rs_tab { font-size:0.75rem; font-weight:700; letter-spacing:1px; text-transform:uppercase; padding:10px 24px; border-radius:12px; cursor:pointer; color:rgba(255,255,255,0.65); transition:all 0.3s; border:none; background:transparent; }
.rs_tab.active { background:rgba(255,255,255,0.2); color:white; }
.rs_tab:hover:not(.active) { color:rgba(255,255,255,0.9); }
.rs_layout { display:flex; gap:72px; align-items:start; }
.rs_left_col { flex:0 0 46%; }
.rs_right_col { flex:1; position:sticky; top:100px; }
.rs_main_photo { position:relative; border-radius:24px; overflow:hidden; height:420px; cursor:pointer; }
.rs_main_photo img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }
.rs_main_photo:hover img { transform:scale(1.04); }
.rs_photo_badge { position:absolute; bottom:20px; left:20px; background:rgba(255,255,255,0.2); color:white; padding:8px 18px; border-radius:9999px; font-size:0.72rem; font-weight:700; letter-spacing:1px; text-transform:uppercase; backdrop-filter:blur(8px); }
.rs_photo_expand { position:absolute; top:16px; right:16px; background:rgba(255,255,255,0.15); color:white; width:36px; height:36px; border-radius:9999px; display:flex; align-items:center; justify-content:center; backdrop-filter:blur(8px); opacity:0; transition:opacity 0.3s; }
.rs_main_photo:hover .rs_photo_expand { opacity:1; }
.rs_thumbs { display:flex; gap:10px; margin-top:12px; }
.rs_thumb { width:80px; height:56px; border-radius:10px; overflow:hidden; cursor:pointer; border:2px solid transparent; transition:border-color 0.3s, opacity 0.3s; opacity:0.55; }
.rs_thumb.active { border-color:var(--third_color); opacity:1; }
.rs_thumb:hover { opacity:0.9; }
.rs_thumb img { width:100%; height:100%; object-fit:cover; }
.rs_chars_title { font-size:0.65rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--third_color); margin-bottom:16px; }
.rs_chars_list { list-style:none; padding:0; margin:0 0 40px; display:flex; flex-direction:column; gap:10px; }
.rs_chars_list li { display:flex; align-items:center; gap:12px; font-size:0.84rem; color:rgba(255,255,255,0.7); }
.rs_chars_list li::before { content:''; width:6px; height:6px; border-radius:9999px; background:var(--third_color); flex-shrink:0; }
.rs_cta_wrap { display:flex; align-items:center; gap:24px; }
.cta_primary_light { background-color:var(--third_color); color:var(--secondary_color); padding:16px 32px; border-radius:9999px; font-weight:700; transition:all 0.3s ease; display:inline-flex; align-items:center; text-transform:uppercase; letter-spacing:1px; font-size:0.875rem; text-decoration:none; }
.cta_primary_light:hover { background-color:white; color:var(--secondary_color); transform:translateY(-2px); box-shadow:0 8px 24px rgba(210,211,150,0.3); }

/* ── HOMEPAGE: Grafting Service ── */
.grafting_section { background:white; padding:96px 0; overflow:hidden; }
.grafting_photo_wrap { position:relative; border-radius:24px; overflow:hidden; height:500px; flex:0 0 48%; }
.grafting_photo_wrap img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.6s ease; }
.grafting_photo_wrap:hover img { transform:scale(1.04); }
.grafting_badge { position:absolute; top:24px; left:24px; background:var(--primary_color); color:white; border-radius:14px; padding:16px 20px; text-align:center; }
.grafting_badge_num { font-family:'Lora',serif; font-size:2rem; font-weight:700; line-height:1; }
.grafting_badge_label { font-size:0.6rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; opacity:0.8; margin-top:2px; }
.grafting_step { display:flex; align-items:flex-start; gap:16px; padding:16px 0; border-bottom:1px solid rgba(103,107,59,0.08); }
.grafting_step:last-child { border-bottom:none; }
.grafting_step_num { width:32px; height:32px; border-radius:50%; background:rgba(103,107,59,0.1); color:var(--primary_color); font-size:0.72rem; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:2px; }
.grafting_step_title { font-family:'Lora',serif; font-size:0.95rem; font-weight:700; color:var(--secondary_color); margin-bottom:3px; }
.grafting_step_desc { font-size:0.8rem; color:var(--text_main); opacity:0.65; line-height:1.6; }

/* ── HOMEPAGE: Consulting ── */
.consulting_section { background:var(--bg_beige); padding:96px 0; }
.consulting_feature { background:white; border-radius:20px; padding:32px 28px; border:1px solid rgba(103,107,59,0.08); transition:box-shadow 0.3s, transform 0.3s; }
.consulting_feature:hover { box-shadow:0 12px 36px rgba(103,107,59,0.1); transform:translateY(-4px); }
.consulting_icon { width:48px; height:48px; border-radius:14px; background:rgba(103,107,59,0.1); display:flex; align-items:center; justify-content:center; margin-bottom:18px; }
.consulting_feature_title { font-family:'Lora',serif; font-size:1.05rem; font-weight:700; color:var(--secondary_color); margin-bottom:8px; }
.consulting_feature_desc { font-size:0.82rem; color:var(--text_main); opacity:0.68; line-height:1.7; }

/* ── HOMEPAGE: News / Blog cards ── */
.news_section { background:#f8f7f4; padding:96px 0; }
.news_card { background:white; border-radius:16px; overflow:hidden; border:1px solid rgba(103,107,59,0.08); transition:box-shadow 0.3s ease, transform 0.3s ease; }
.news_card:hover { box-shadow:0 12px 40px rgba(103,107,59,0.12); transform:translateY(-4px); }
.news_card_img { width:100%; height:200px; object-fit:cover; display:block; }
.news_card_img_placeholder { width:100%; height:200px; background:var(--bg_beige); display:flex; align-items:center; justify-content:center; }
.news_card_body { padding:24px; }
.news_card_tag { display:inline-block; font-size:0.6rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--primary_color); background:rgba(103,107,59,0.08); border-radius:9999px; padding:2px 10px; margin-bottom:12px; }
.news_card_title { font-family:'Lora',serif; font-size:1.1rem; font-weight:700; color:var(--secondary_color); line-height:1.35; margin-bottom:10px; }
.news_card_excerpt { font-size:0.82rem; color:var(--text_main); opacity:0.7; line-height:1.7; margin-bottom:16px; }
.news_card_meta { display:flex; justify-content:space-between; align-items:center; font-size:0.72rem; color:var(--primary_color); opacity:0.6; border-top:1px solid rgba(103,107,59,0.08); padding-top:14px; }
.news_card_read { font-weight:700; text-decoration:none; color:var(--primary_color); font-size:0.72rem; letter-spacing:1px; text-transform:uppercase; transition:opacity 0.2s; }
.news_card_read:hover { opacity:0.7; }

/* ── HOMEPAGE: Lightbox ── */
.lightbox_overlay { position:fixed; inset:0; background:rgba(0,0,0,0.92); z-index:9999; display:none; align-items:center; justify-content:center; padding:24px; }
.lightbox_overlay.open { display:flex; }
.lightbox_inner { position:relative; max-width:1000px; width:100%; }
.lightbox_inner img { width:100%; max-height:80vh; object-fit:contain; border-radius:16px; }
.lightbox_close { position:absolute; top:-48px; right:0; color:white; background:rgba(255,255,255,0.1); border:none; cursor:pointer; width:36px; height:36px; border-radius:9999px; display:flex; align-items:center; justify-content:center; font-size:20px; transition:background 0.3s; }
.lightbox_close:hover { background:rgba(255,255,255,0.25); }

/* ── HOMEPAGE: Responsive ── */
@media(max-width:1024px){
    .rs_layout { flex-direction:column; gap:40px; }
    .rs_right_col { position:static; width:100%; }
    .rs_left_col { flex:none; width:100%; }
}
@media(max-width:768px){
    .counter_number{font-size:2rem}
    .hero_image_text{padding:20px 24px;flex-direction:column;gap:16px;align-items:flex-start}
    .hero_top{padding-top:110px}
    .seedlings_grid{grid-template-columns:1fr;grid-template-rows:auto;height:auto}
    .seedling_large{grid-column:1;grid-row:auto;height:280px}
    .seedling_small{height:200px}
    .sr_img_wrap{display:none}
    .sr_num{min-width:50px;padding:24px 16px 24px 0}
    .rs_tabs{flex-wrap:wrap}
}
/* Home counter: fit the single-row layout on tablet (640–1024px) — prevents horizontal scroll */
@media(min-width:640px) and (max-width:1024px){
    .counter_section { padding:48px 16px; }
    .counter_section .flex-1 { min-width:0; padding-left:8px; padding-right:8px; }
    .counter_divider { margin:0 3px; }
    .counter_number { font-size:1.9rem; }
}
@media(min-width:640px) and (max-width:768px){
    .counter_number { font-size:1.45rem; }
}

/* ══════════════════════════════════════════════════════
   ROOTSTOCKS PAGE: /rootstocks — catalogue page
   ══════════════════════════════════════════════════════ */

/* ── ROOTSTOCKS PAGE: Dark main section (overrides homepage .rootstocks_section) ── */
#rootstocks_section { background: #4f4c4a; padding: 96px 0 72px; }
.home_rootstocks_section { background: var(--primary_color); }

/* ── ROOTSTOCKS PAGE: Beige page title hero ── */
.rs_page_hero { background: var(--bg_beige); padding: 140px 0 72px; position: relative; overflow: hidden; }
.rs_page_hero::before { content: ''; position: absolute; inset: 0; background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='260'><line x1='48' y1='260' x2='48' y2='182' stroke='%23676B3B' stroke-width='2.2' opacity='0.08'/><line x1='48' y1='198' x2='16' y2='152' stroke='%23676B3B' stroke-width='1.6' opacity='0.065'/><line x1='48' y1='198' x2='80' y2='149' stroke='%23676B3B' stroke-width='1.6' opacity='0.065'/><line x1='48' y1='185' x2='48' y2='116' stroke='%23676B3B' stroke-width='1.6' opacity='0.065'/><line x1='16' y1='152' x2='3' y2='120' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/><line x1='16' y1='152' x2='28' y2='118' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/><line x1='80' y1='149' x2='68' y2='116' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/><line x1='80' y1='149' x2='94' y2='118' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/><line x1='48' y1='133' x2='36' y2='102' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/><line x1='48' y1='133' x2='60' y2='100' stroke='%23676B3B' stroke-width='1.1' opacity='0.05'/></svg>"); background-size: 200px 260px; pointer-events: none; }

/* ── ROOTSTOCKS PAGE: Category tabs ── */
.rs_cat_nav { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 56px; justify-content: center; }
.rs_cat_tab { display: inline-flex; align-items: center; gap: 9px; padding: 12px 26px; border-radius: 9999px; border: 1px solid rgba(255,255,255,0.12); background: transparent; color: rgba(255,255,255,0.45); font-size: 0.76rem; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; cursor: pointer; transition: all 0.3s ease; }
.rs_cat_tab.active { background: var(--primary_color); border-color: var(--primary_color); color: white; box-shadow: 0 4px 20px rgba(103,107,59,0.35); }
.rs_cat_tab:hover:not(.active) { border-color: rgba(255,255,255,0.3); color: rgba(255,255,255,0.75); }
.rs_cat_tab svg { width: 18px; height: 18px; opacity: 0.8; flex-shrink: 0; }

/* ── ROOTSTOCKS PAGE: Category panels ── */
.rs_cat_panel { display: none; }
.rs_cat_panel.active { display: block; animation: fadeInUp 0.45s ease; }
.rs_section_label { font-size: 0.6rem; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--third_color); opacity: 0.7; margin-bottom: 20px; display: block; }

/* ── ROOTSTOCKS PAGE: Sub-tabs (scoped to page section) ── */
#rootstocks_section .rs_tabs { background: rgba(255,255,255,0.06); border-radius: 14px; padding: 5px; margin-bottom: 32px; }
#rootstocks_section .rs_tab { color: rgba(255,255,255,0.4); padding: 9px 20px; border-radius: 10px; }
#rootstocks_section .rs_tab.active { background: var(--primary_color); color: white; }

/* ── ROOTSTOCKS PAGE: Text panels ── */
.rs_text_panel { display: none; margin-bottom: 32px; }
.rs_text_panel.active { display: block; animation: fadeInUp 0.4s ease; }
.rs_rootstock_name { font-family: 'Lora', serif; font-size: clamp(20px, 2.2vw, 28px); font-weight: 700; color: white; margin-bottom: 16px; }
.rs_rootstock_desc { font-size: 0.875rem; color: rgba(255,255,255,0.6); line-height: 1.85; margin-bottom: 14px; }

/* ── ROOTSTOCKS PAGE: Photo sets ── */
.rs_photo_set { display: none; }
.rs_photo_set.active { display: block; animation: fadeInUp 0.45s ease; }

/* ── ROOTSTOCKS PAGE: Why Buy section ── */
.rs_why_section { background: white; padding: 96px 0; }
.rs_why_header { text-align: center; margin-bottom: 64px; }
.rs_why_eyebrow { font-size: 0.65rem; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--primary_color); margin-bottom: 14px; }
.rs_why_heading { font-family: 'Lora', serif; font-size: clamp(26px, 3vw, 40px); font-weight: 700; color: var(--secondary_color); line-height: 1.25; margin-bottom: 0; }
.rs_why_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.rs_why_item { background: white; border-radius: 20px; padding: 36px 30px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 2px 16px rgba(79,76,74,0.06); transition: transform 0.3s, box-shadow 0.3s; }
.rs_why_item:hover { transform: translateY(-4px); box-shadow: 0 8px 32px rgba(79,76,74,0.12); }
.rs_why_num { font-size: 0.62rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--primary_color); background: rgba(103,107,59,0.1); display: inline-block; padding: 4px 12px; border-radius: 9999px; width: fit-content; }
.rs_why_title { font-family: 'Lora', serif; font-size: 1rem; font-weight: 700; color: var(--secondary_color); line-height: 1.35; }
.rs_why_desc { font-size: 0.84rem; color: var(--secondary_color); opacity: 0.65; line-height: 1.75; }

/* ── ROOTSTOCKS PAGE: Quality & Packaging section ── */
.rs_quality_section { background: #676b3b; padding: 96px 0; }
.rs_quality_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.rs_quality_card { background: white; border-radius: 24px; padding: 48px 40px; }
.rs_quality_tag { font-size: 0.62rem; font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color: var(--primary_color); margin-bottom: 16px; display: block; }
.rs_quality_heading { font-family: 'Lora', serif; font-size: clamp(20px, 2.2vw, 26px); font-weight: 700; color: var(--secondary_color); margin-bottom: 24px; line-height: 1.3; }
.rs_quality_list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 14px; }
.rs_quality_list li { display: flex; align-items: flex-start; gap: 14px; font-size: 0.875rem; color: var(--secondary_color); opacity: 0.75; line-height: 1.6; }
.rs_quality_check { width: 20px; height: 20px; flex-shrink: 0; margin-top: 2px; background: var(--primary_color); border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.rs_quality_check svg { width: 10px; height: 10px; }

/* ── ROOTSTOCKS PAGE: CTA bottom section ── */
.rs_cta_section { background: white; padding: 96px 0; }
.rs_cta_inner { text-align: center; max-width: 640px; margin: 0 auto; }
.rs_cta_eyebrow { font-size: 0.65rem; font-weight: 700; letter-spacing: 4px; text-transform: uppercase; color: var(--primary_color); margin-bottom: 20px; }
.rs_cta_heading { font-family: 'Lora', serif; font-size: clamp(26px, 3.5vw, 42px); font-weight: 700; color: var(--secondary_color); line-height: 1.25; margin-bottom: 16px; }
.rs_cta_sub { font-size: 0.9rem; color: var(--secondary_color); opacity: 0.65; line-height: 1.8; margin-bottom: 40px; }
.rs_cta_list { list-style: none; padding: 0; margin: 0 0 44px; text-align: left; display: inline-flex; flex-direction: column; gap: 10px; }
.rs_cta_list li { display: flex; align-items: center; gap: 12px; font-size: 0.875rem; color: var(--secondary_color); opacity: 0.75; }
.rs_cta_list li::before { content: ''; width: 6px; height: 6px; border-radius: 9999px; background: var(--primary_color); flex-shrink: 0; }
.rs_cta_buttons { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; }
.cta_primary_olive { background: var(--primary_color); color: white; padding: 16px 36px; border-radius: 9999px; font-weight: 700; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; transition: all 0.3s; display: inline-block; }
.cta_primary_olive:hover { background: var(--secondary_color); color: white; transform: translateY(-2px); text-decoration: none; }

/* ── ROOTSTOCKS PAGE: Responsive ── */
@media(max-width:1024px){
    .rs_why_grid { grid-template-columns: 1fr 1fr; }
}
@media(max-width:768px){
    .rs_cat_nav { gap: 6px; }
    .rs_cat_tab { padding: 10px 16px; font-size: 0.68rem; }
    .rs_why_grid { grid-template-columns: 1fr; }
    .rs_quality_grid { grid-template-columns: 1fr; }
    .rs_cta_buttons { flex-direction: column; align-items: center; }
}
@media(max-width:480px){
    .rs_cat_nav { flex-direction: column; }
    .rs_cat_tab { width: 100%; justify-content: center; }
}
