/* =================================================================
   Fındık Kabuğu — ANASAYFA
   ================================================================= */
.is-home main + .hero{margin-top:0}
.sec{padding:96px 0 0}
.sec-head{margin-bottom:36px}
.sec-head.center{text-align:center}
.sec-head.center .eyebrow{justify-content:center}
.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.sec-title{font:400 clamp(36px,4.4vw,62px)/1.02 var(--f-serif);letter-spacing:-.025em}
.more{font-weight:600;font-size:14.5px;border-bottom:1.5px solid;padding-bottom:2px;white-space:nowrap}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
[data-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}

/* ---------- Giriş: kabuğu kır ---------- */
.hero{background:transparent;overflow:visible;position:relative}
.hero::before{content:"";position:absolute;inset:0 0 -60px;background:radial-gradient(ellipse 60% 70% at 78% 40%,#f1dfc0 0,rgba(241,223,192,0) 70%);pointer-events:none}
.hero-in{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;min-height:min(78vh,720px);padding-top:40px;padding-bottom:40px}
.hero-title{font:300 clamp(52px,7vw,104px)/.95 var(--f-serif);letter-spacing:-.035em;margin:0 0 24px}
.hero-title em{display:block;font-style:italic;font-weight:400;color:var(--violet)}
.hero-text{font-size:18px;line-height:1.65;color:#5a4636;max-width:500px;margin:0 0 30px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.hero-facts{list-style:none;display:flex;gap:34px;padding:30px 0 0;margin:36px 0 0;border-top:1px solid rgba(43,27,18,.12)}
.hero-facts li{display:flex;gap:10px;align-items:center}
.hero-facts b{font:400 38px/1 var(--f-serif);color:var(--violet)}
.hero-facts span{font-size:12.5px;line-height:1.3;color:var(--muted)}

.hero-stage{position:relative;aspect-ratio:1;width:min(100%,560px);justify-self:center}
.stage-disc{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle at 40% 35%,#f6e7cc,#e3c797);box-shadow:inset 0 -20px 50px rgba(122,74,34,.18),0 40px 80px -40px rgba(43,27,18,.45)}
.stage-ring{position:absolute;inset:0;width:100%;height:100%;animation:spin 60s linear infinite}
.stage-ring text{font:700 11.5px/1 var(--f-body);letter-spacing:4.2px;fill:var(--violet);opacity:.7}
.nut{position:absolute;left:50%;top:50%;width:46%;transform:translate(-50%,-52%);border:0;background:none;padding:0;cursor:pointer;z-index:3;filter:drop-shadow(0 26px 22px rgba(43,27,18,.35))}
.nut svg{width:100%;height:auto;overflow:visible;display:block}
.nut:focus-visible{outline:3px solid var(--honey);outline-offset:8px;border-radius:50%}
.nut:hover .cap{transform:translateY(-4px)}
.nut .half,.nut .cap,.nut .crack-line,.nut .kernel{transition:transform .7s cubic-bezier(.3,1.4,.4,1),opacity .4s}
.nut .half-l{transform-origin:140px 312px}
.nut .half-r{transform-origin:160px 312px}
.nut .cap{transform-origin:150px 150px}
.nut .crack-line{opacity:0}
.nut .kernel{opacity:0;transform:scale(.85);transform-origin:150px 200px}
.nut.wobble{animation:wobble .45s}
@keyframes wobble{20%{transform:translate(-50%,-52%) rotate(-7deg)}45%{transform:translate(-50%,-52%) rotate(6deg)}70%{transform:translate(-50%,-52%) rotate(-3deg)}}
.is-cracked .nut .crack-line{opacity:1}
.is-open .nut .crack-line{opacity:0}
.is-open .nut .half-l{transform:translate(-46px,18px) rotate(-26deg)}
.is-open .nut .half-r{transform:translate(46px,18px) rotate(26deg)}
.is-open .nut .cap{transform:translate(0,-90px) rotate(-18deg);opacity:.0}
.is-open .nut .kernel{opacity:1;transform:scale(1)}
.crumb{position:absolute;left:50%;top:52%;width:12px;height:9px;border-radius:40% 60% 50% 50%;background:#8a5028;z-index:4;pointer-events:none;animation:crumb 1.2s cubic-bezier(.2,.6,.4,1) forwards}
.crumb:nth-child(odd){background:#c99a64;width:8px;height:7px}
@keyframes crumb{to{transform:translate(var(--dx),var(--dy)) rotate(var(--r));opacity:0}}
.crack-hint{position:absolute;right:-4%;top:-7%;background:var(--paper);padding:6px 10px;border-radius:14px;z-index:4;margin:0;max-width:170px;font:600 23px/1.05 var(--f-hand);color:var(--violet);transform:rotate(6deg);display:flex;flex-direction:column;align-items:flex-start;gap:0}
.crack-hint svg{order:2;width:58px;height:40px;stroke-width:2.2;transform:scaleX(-1) rotate(70deg);margin:2px 0 0 10px}
.is-open .crack-hint{opacity:0;transition:.3s}
.crack-reveal{position:absolute;left:50%;bottom:4%;z-index:5;transform:translateX(-50%);width:min(88%,340px);text-align:center;background:#fffaf0;border-radius:22px;padding:18px 20px 14px;
  box-shadow:0 30px 60px -24px rgba(43,27,18,.55);border:1px solid #efdcb8;animation:pop .6s .25s cubic-bezier(.3,1.5,.5,1) both}
.crack-reveal strong{display:block;font:500 25px/1.1 var(--f-serif)}
.crack-reveal>span{display:block;font-size:13.5px;color:var(--muted);margin:4px 0 10px}
.crack-reveal .code{display:inline-flex;align-items:center;gap:10px;border:1.5px dashed var(--violet);background:#fff;border-radius:12px;padding:9px 16px;font:700 20px/1 var(--f-body);letter-spacing:.14em;color:var(--aub);cursor:pointer}
.crack-reveal .code small{font:600 11px/1 var(--f-body);letter-spacing:.04em;color:var(--leaf);text-transform:uppercase}
.crack-reveal .link-btn{display:block;margin:10px auto 0;font-size:12.5px}
@keyframes pop{from{opacity:0;transform:translate(-50%,24px) scale(.9)}}

.orbit{position:absolute;z-index:2;width:30%;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .5s cubic-bezier(.3,1.4,.4,1)}
.orbit img{width:100%;height:auto;filter:drop-shadow(0 16px 14px rgba(43,27,18,.28))}
.orbit span{margin-top:-6px;font:500 13.5px/1.2 var(--f-serif);background:rgba(255,250,240,.9);padding:6px 10px;border-radius:12px;box-shadow:0 8px 20px -12px rgba(43,27,18,.4);opacity:0;transform:translateY(6px);transition:.25s}
.orbit span b{display:block;font:600 12px/1.3 var(--f-body);color:var(--violet)}
.orbit:hover{transform:translateY(-8px) rotate(0deg)!important}
.orbit:hover span{opacity:1;transform:none}
.orbit-1{left:-4%;top:48%;transform:rotate(-10deg)}
.orbit-2{right:-3%;top:44%;transform:rotate(9deg)}
.orbit-3{left:6%;top:-2%;width:24%;transform:rotate(-4deg)}
.is-open .orbit-1{transform:translateX(-10px) rotate(-16deg)}
.is-open .orbit-2{transform:translateX(10px) rotate(15deg)}

/* ---------- Kategori rafı ---------- */
.shelf{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;z-index:1}
.shelf-item{display:flex;flex-direction:column;align-items:center;text-align:center}
.shelf-art{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center}
.shelf-art::before{content:"";position:absolute;inset:14% 10% 4%;border-radius:32px;background:#f0e1c6;transition:.4s}
.shelf-item:nth-child(2) .shelf-art::before{background:#ecd8c8}
.shelf-item:nth-child(3) .shelf-art::before{background:#e5dfc6}
.shelf-item:nth-child(4) .shelf-art::before{background:#f1d9bd}
.shelf-art img{position:relative;width:92%;height:auto;transition:transform .5s cubic-bezier(.3,1.4,.4,1);transform-origin:50% 90%}
.shelf-item:hover .shelf-art img{transform:translateY(-14px) rotate(-4deg)}
.shelf-item:hover .shelf-art::before{inset:10% 6% 4%}
.shelf-label{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:22px}
.shelf-label strong{font:500 26px/1.05 var(--f-serif);letter-spacing:-.01em}
.shelf-label small{font-size:12.5px;color:var(--hazel);font-weight:600;letter-spacing:.06em}
.shelf-desc{font-size:13.5px;color:var(--muted);margin-top:8px;max-width:250px;line-height:1.5}
.shelf-board{height:18px;margin:-150px 0 0;border-radius:4px;background:linear-gradient(#b98552,#8c5a30);box-shadow:0 14px 20px -10px rgba(43,27,18,.45);position:relative;z-index:0;opacity:.0}

/* ---------- Tat haritası ---------- */
.taste-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
.map-filter{display:flex;gap:8px;margin:26px 0 20px;flex-wrap:wrap}
.map-filter button{display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(43,27,18,.16);background:#fff;border-radius:999px;padding:9px 16px;font-weight:600;font-size:13.5px;cursor:pointer;transition:.15s}
.map-filter button.is-active{background:var(--aub);border-color:var(--aub);color:#fff}
.map-filter i{width:10px;height:10px;border-radius:50%}
.k-ezme{background:var(--hazel);border-radius:3px!important}
.k-krema{background:#4a2a1a;box-shadow:0 0 0 2px #fff}
.map-card{min-height:112px}
.map-pick{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:12px 18px 12px 12px;box-shadow:0 20px 40px -30px rgba(43,27,18,.5);animation:fadeUp .35s both}
.map-pick img{width:88px;height:88px;border-radius:16px;background:var(--cream);object-fit:contain;flex:none}
.map-pick span{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.map-pick small{font:700 11px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--hazel)}
.map-pick strong{font:500 21px/1.15 var(--f-serif)}
.map-pick em{font-style:normal;font-size:12.5px;color:#435a2b}
.map-pick b{font-size:14px;color:var(--violet)}
.map-pick i{font-style:normal;font-size:22px;color:var(--violet);transition:.2s}
.map-pick:hover i{transform:translateX(4px)}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}}
.map{position:relative;padding:0 0 34px 34px}
.map-plot{position:relative;aspect-ratio:1;border-radius:28px;background:
  linear-gradient(rgba(43,27,18,.08),rgba(43,27,18,.08)) center/1.5px 100% no-repeat,
  linear-gradient(90deg,rgba(43,27,18,.08),rgba(43,27,18,.08)) center/100% 1.5px no-repeat,
  radial-gradient(circle at 18% 18%,#e7cfa9 0,transparent 45%),radial-gradient(circle at 82% 18%,#dcc0a3 0,transparent 45%),
  radial-gradient(circle at 18% 82%,#f3e7d0 0,transparent 45%),radial-gradient(circle at 82% 82%,#f1dcc0 0,transparent 45%),#f7eddb;
  border:1px solid rgba(43,27,18,.08)}
.map-q{position:absolute;font:500 italic 13px/1.1 var(--f-serif);color:rgba(90,70,54,.55);pointer-events:none}
.q1{left:5%;top:5%}.q2{right:5%;top:5%;text-align:right}.q3{left:5%;bottom:5%}.q4{right:5%;bottom:5%;text-align:right}
.map-ax{position:absolute;display:flex;justify-content:space-between;font:700 11px/1 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.map-ax-x{left:34px;right:0;bottom:6px}
.map-ax-y{left:0;top:0;bottom:34px;width:14px;flex-direction:column;writing-mode:vertical-rl;transform:rotate(180deg);flex-direction:row-reverse}
.dot{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:3px solid #fff;background:var(--c);cursor:pointer;padding:0;
  box-shadow:0 6px 14px -4px rgba(43,27,18,.5);transition:transform .25s cubic-bezier(.3,1.6,.5,1),opacity .25s}
.dot-ezme{border-radius:8px}
.dot span{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%) translateY(4px);white-space:nowrap;background:var(--aub);color:#fff;font:500 12.5px/1 var(--f-body);padding:6px 10px;border-radius:8px;opacity:0;pointer-events:none;transition:.2s}
.dot:hover,.dot.is-on{transform:scale(1.35);z-index:2}
.dot:hover span,.dot.is-on span{opacity:1;transform:translateX(-50%)}
.dot.is-on{box-shadow:0 0 0 6px rgba(217,149,47,.35),0 6px 14px -4px rgba(43,27,18,.5)}
.dot.is-dim{opacity:.18;transform:scale(.8)}
.dot:focus-visible{outline:3px solid var(--honey);outline-offset:3px}

/* ---------- Vitrin sekmeleri ---------- */
.tabs{display:block}
.tabs-nav{display:flex;gap:4px;margin-bottom:28px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(43,27,18,.1)}
.tab{font:400 24px/1 var(--f-serif);color:#bfae98;padding:0 18px 14px 0;position:relative}
.tab::after{content:"";position:absolute;left:0;right:18px;bottom:-1px;height:2px;background:var(--aub);transform:scaleX(0);transform-origin:left;transition:.25s}
.tab.is-active::after{transform:scaleX(1)}
.tab-pane{display:none}
.tab-pane.is-active{display:block;animation:fadeUp .4s both}

/* ---------- Kampanyalar ---------- */
.camps{padding-top:72px}
.camps-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.camp-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:6px;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--line);transition:.25s}
.camp-card::after{content:"";position:absolute;right:-40px;top:-40px;width:140px;height:140px;border-radius:50%;background:var(--cc);opacity:.12;transition:.4s}
.camp-card:hover{transform:translateY(-4px);box-shadow:0 26px 40px -30px rgba(43,27,18,.5)}
.camp-card:hover::after{transform:scale(1.5)}
.camp-badge{align-self:flex-start;background:var(--cc);color:#fff;font:700 12px/1 var(--f-body);letter-spacing:.08em;padding:7px 12px;border-radius:999px;margin-bottom:8px}
.camp-card strong{font:500 26px/1.1 var(--f-serif)}
.camp-card>span:not(.camp-badge){color:var(--muted);font-size:14.5px}
.camp-card em{font-style:normal;font-weight:600;font-size:13.5px;margin-top:10px;color:var(--violet)}

/* ---------- Tarladan kavanoza ---------- */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;position:relative}
.steps::before{content:"";position:absolute;left:10%;right:10%;top:38px;border-top:2px dashed rgba(122,74,34,.3)}
.steps li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.step-ic{position:relative;width:78px;height:78px;border-radius:50%;background:var(--paper);border:1.5px solid rgba(122,74,34,.25);display:grid;place-items:center;color:var(--violet);margin-bottom:10px;transition:.35s}
.step-ic svg{width:32px;height:32px;stroke-width:1.5}
.step-ic i{position:absolute;right:-4px;top:-4px;width:26px;height:26px;border-radius:50%;background:var(--honey);color:var(--aub);font:700 12px/26px var(--f-body);font-style:normal}
.steps li:hover .step-ic{background:var(--aub);color:#fff;transform:translateY(-4px) rotate(-6deg)}
.steps strong{font:500 23px/1.1 var(--f-serif)}
.steps span{font-size:14px;color:var(--muted);line-height:1.5;max-width:210px}
.process.is-in .steps li{animation:fadeUp .6s calc(var(--i) * .1s) both}

/* ---------- Hediye bandı ---------- */
.gift{margin-top:110px;background:var(--aub);color:#f3e6cf;position:relative;overflow:hidden}
.gift::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cg fill='%23ffffff' fill-opacity='.035'%3E%3Cpath d='M35 58c-9 0-13-7-12-14 1-6 5-9 12-9s11 3 12 9c1 7-3 14-12 14z'/%3E%3Cpath d='M105 128c-9 0-13-7-12-14 1-6 5-9 12-9s11 3 12 9c1 7-3 14-12 14z'/%3E%3C/g%3E%3C/svg%3E")}
.gift-in{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:80px;padding-bottom:80px}
.gift .eyebrow{color:var(--honey)}
.gift .sec-title{color:#fff}
.gift .sec-title em{color:#e0bf8a}
.gift .lead{color:#d8c6ad;margin:18px 0 28px}
.gift-corp{display:flex;align-items:center;gap:10px;margin:22px 0 0;font-size:14px;color:#c7b196}
.gift-corp svg{color:var(--honey);width:20px;height:20px}
.gift-corp a{color:#fff;text-decoration:underline}
.gift-art{position:relative;justify-self:center;width:min(100%,460px)}
.gift-art::before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,#4a3020,transparent 70%)}
.gift-art img{position:relative;width:100%;height:auto;filter:drop-shadow(0 30px 30px rgba(0,0,0,.45))}
.note-card{position:absolute;right:-2%;bottom:10%;background:#fffaf0;color:var(--aub);font:600 25px/1.05 var(--f-hand);padding:18px 22px 14px;border-radius:4px;transform:rotate(7deg);
  box-shadow:0 20px 30px -12px rgba(0,0,0,.5);background-image:repeating-linear-gradient(transparent 0 25px,#efe2c9 25px 26px)}
.note-card i{display:block;font-size:19px;color:var(--violet);margin-top:6px;text-align:right}
.is-home .perks{margin-top:0}

@media (max-width:1100px){
  .hero-in{grid-template-columns:1fr;min-height:0;gap:10px;padding-top:24px}
  .hero-stage{width:min(100%,520px);margin-top:10px}
  .taste-in{grid-template-columns:1fr;gap:36px}
  .shelf{grid-template-columns:repeat(2,1fr);gap:34px 18px}
  .steps{grid-template-columns:repeat(3,1fr);row-gap:36px}
  .steps::before{display:none}
}
@media (max-width:760px){
  .sec{padding-top:72px}
  .gift-in{grid-template-columns:1fr;padding-top:60px;padding-bottom:60px}
  .note-card{font-size:21px;right:0}
}
@media (max-width:640px){
  .hero-title{font-size:clamp(46px,13vw,64px)}
  .hero-text{font-size:16px}
  .hero-facts{gap:18px;justify-content:space-between}
  .hero-facts li{flex-direction:column;align-items:flex-start;gap:4px}
  .hero-facts b{font-size:30px}
  .hero-btns .btn{flex:1}
  .crack-hint{font-size:19px;right:0;top:4%;max-width:130px}
  .crack-hint svg{width:44px}
  .orbit span{display:none}
  .crack-reveal{bottom:0;padding:14px}
  .crack-reveal strong{font-size:21px}
  .shelf-label strong{font-size:21px}
  .shelf-desc{display:none}
  .steps{grid-template-columns:1fr 1fr}
  .steps li:last-child{grid-column:1/-1}
  .map{padding:0 0 28px 26px}
  .map-q{font-size:12px}
  .dot{width:22px;height:22px;margin:-11px 0 0 -11px}
  .map-pick img{width:68px;height:68px}
  .map-pick strong{font-size:18px}
  .tab{font-size:20px}
  .sec-head-row{flex-direction:column;align-items:flex-start}
}
