:root{
  --navy:#071226;
  --navy-2:#0a1830;
  --navy-3:#0d2242;
  --blue:#087ff5;
  --cyan:#15c3ee;
  --white:#fff;
  --text:#eaf4ff;
  --muted:#9eb3c9;
  --line:rgba(124,180,224,.22);
  --panel:rgba(6,19,39,.76);
  --shadow:0 30px 80px rgba(0,12,30,.34);
  --radius:24px;
  --header-h:78px;
  --shell:min(1420px,calc(100% - 64px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy);color-scheme:dark}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:var(--navy);color:var(--text);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{display:block;max-width:100%}
.shell{width:var(--shell);margin-inline:auto}
.skip-link{position:fixed;top:8px;left:8px;z-index:9999;padding:10px 14px;background:#fff;color:#061426;border-radius:9px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.eyebrow{margin:0 0 18px;color:#65cef9;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:800}
.section{position:relative;isolation:isolate}
.section h2{margin:0;color:#fff;font-size:clamp(2.2rem,4.7vw,5.25rem);font-weight:300;letter-spacing:-.055em;line-height:.98}
.section h2 strong{font-weight:800}
.btn{min-height:52px;padding:0 24px;border:1px solid transparent;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-transform:uppercase;letter-spacing:.075em;font-size:.77rem;font-weight:850;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:linear-gradient(135deg,var(--blue),#0aa8f1);color:#fff;box-shadow:0 12px 34px rgba(8,127,245,.24)}
.btn-primary:hover{box-shadow:0 16px 40px rgba(8,127,245,.32)}
.btn-ghost{border-color:rgba(255,255,255,.44);background:rgba(4,16,34,.22);backdrop-filter:blur(8px);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.75)}
.btn-ghost.dark{border-color:rgba(8,51,94,.22);background:#edf7ff;color:#0a2440}

/* Header */
.site-header{height:var(--header-h);padding:0 max(28px,calc((100vw - 1420px)/2));display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:100;transition:height .3s ease,background .3s ease,box-shadow .3s ease,border-color .3s ease,backdrop-filter .3s ease;border-bottom:1px solid transparent}
.site-header.is-scrolled{height:66px;background:rgba(5,17,37,.91);backdrop-filter:blur(16px) saturate(135%);border-color:rgba(87,168,224,.16);box-shadow:0 16px 44px rgba(0,9,25,.22)}
.brand img{width:139px;height:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.16))}
.header-gift{height:42px;padding:0 18px;border-radius:11px;border:1px solid rgba(255,255,255,.34);background:rgba(2,17,37,.22);backdrop-filter:blur(8px);font-size:.74rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:.2s ease}
.header-gift:hover{background:var(--blue);border-color:var(--blue);box-shadow:0 9px 30px rgba(8,127,245,.25)}

/* Hero */
.hero{min-height:100svh;display:flex;align-items:center;position:relative;overflow:hidden;background:#020817}
.hero-slider,.hero-slide,.hero-slide img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-slide{opacity:0;transform:scale(1.025);transition:opacity 1.25s ease,transform 7s linear}
.hero-slide.is-active{opacity:1;transform:scale(1.075)}
.hero-slide img{object-fit:cover;object-position:center}
.hero-slide:first-child img{object-position:57% center}
.hero-shade{background:linear-gradient(90deg,rgba(1,8,20,.88) 0%,rgba(2,12,28,.62) 42%,rgba(1,9,22,.20) 72%,rgba(1,7,18,.28) 100%),linear-gradient(0deg,rgba(4,14,30,.42),transparent 46%)}
.hero-content{position:relative;z-index:3;padding-top:72px}
.hero-content>*{max-width:690px}
.hero-eyebrow{color:#a9e9ff}
.hero h1{margin:0;color:#fff;line-height:.88;letter-spacing:-.066em;text-shadow:0 8px 40px rgba(0,0,0,.22)}
.hero h1 span{display:block;font-size:clamp(4rem,8.6vw,9rem);font-weight:830}
.hero h1 strong{display:block;font-size:clamp(2.35rem,5vw,5.3rem);font-weight:300;letter-spacing:-.052em;margin-top:14px}
.hero-lead{margin:31px 0 0;font-size:clamp(1.05rem,1.35vw,1.24rem);color:rgba(245,250,255,.91);max-width:590px!important;line-height:1.58}
.hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}
.hero-line{position:absolute;z-index:4;left:0;bottom:0;width:100%;height:2px;overflow:hidden;background:rgba(84,192,241,.12)}
.hero-line::after{content:"";position:absolute;width:28%;height:100%;left:-30%;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:heroLine 3.6s ease-in-out infinite}
@keyframes heroLine{0%,35%{left:-30%}75%,100%{left:110%}}

/* Why */
.why{min-height:820px;display:flex;align-items:center;padding:120px 0;overflow:hidden;background:#dbeaf3}
.why-media,.why-overlay{position:absolute;inset:0}
.why-media img{width:100%;height:100%;object-fit:cover;object-position:center 47%}
.why-overlay{background:linear-gradient(90deg,rgba(2,12,28,.24),rgba(2,12,28,.03) 45%,rgba(2,12,28,.08)),linear-gradient(0deg,rgba(4,17,35,.18),transparent)}
.why-inner{position:relative;z-index:2;display:flex;justify-content:flex-start}
.glass-panel{width:min(700px,60%);padding:54px;border:1px solid rgba(155,220,251,.24);border-radius:28px;background:rgba(5,20,42,.82);backdrop-filter:blur(20px) saturate(126%);box-shadow:0 36px 80px rgba(0,13,31,.24)}
.why-copy h2{font-size:clamp(3rem,5vw,5.6rem);font-weight:280}
.why-copy p{color:#c4d5e4;margin:16px 0 0}
.why-copy p.intro{font-size:1.08rem;color:#fff;margin-top:29px}
.student-project{margin-top:34px;border-top:1px solid rgba(119,190,235,.25)}
.student-project summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;color:#fff;padding:22px 0;font-weight:720;letter-spacing:-.01em}
.student-project summary::-webkit-details-marker{display:none}
.student-project summary i{width:22px;height:22px;position:relative;flex:0 0 auto}
.student-project summary i::before,.student-project summary i::after{content:"";position:absolute;left:4px;right:4px;top:10px;height:2px;background:#51cafa;border-radius:2px;transition:.25s ease}
.student-project summary i::after{transform:rotate(90deg)}
.student-project[open] summary i::after{transform:rotate(0)}
.student-project-body{padding:8px 0 4px;border-top:1px solid rgba(119,190,235,.12)}
.student-project-body h3{font-size:1.2rem;color:#fff;margin:18px 0 4px}
.student-project-body p{font-size:.95rem}
.student-project-body .accent-note{padding-left:15px;border-left:2px solid var(--cyan);color:#aeeaff;margin-top:24px}

/* Experiences */
.experiences{padding:145px 0;background:radial-gradient(circle at 78% 42%,rgba(15,142,218,.17),transparent 28%),linear-gradient(180deg,#061125,#08182f 68%,#071226)}
.experience-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(410px,.78fr);align-items:center;gap:80px}
.experience-copy{max-width:700px}
.experience-copy h2{font-size:clamp(2.65rem,4.4vw,5.05rem)}
.experience-copy p:not(.eyebrow){color:#b6cada;max-width:650px;font-size:1.03rem;margin:24px 0 0}
.ebook{position:relative;height:610px;display:grid;place-items:center;perspective:1250px;outline:none}
.ebook-halo{position:absolute;width:76%;aspect-ratio:1;background:radial-gradient(circle,rgba(24,177,246,.22),rgba(24,177,246,0) 68%);filter:blur(6px);transition:.45s ease}
.ebook-page{position:absolute;width:min(390px,70%);transition:transform .55s cubic-bezier(.16,.8,.22,1),filter .4s ease,opacity .4s ease;transform-style:preserve-3d;filter:drop-shadow(0 35px 30px rgba(0,0,0,.32))}
.ebook-page img{width:100%;height:auto}
.ebook-cover{z-index:3;transform:rotateY(-8deg) rotateX(2deg) translateX(0)}
.ebook-inside{z-index:2;opacity:.0;transform:rotateY(-3deg) translateX(-12px) scale(.96)}
.ebook:hover .ebook-cover,.ebook:focus-visible .ebook-cover{transform:rotateY(-28deg) rotateX(1deg) translateX(-84px)}
.ebook:hover .ebook-inside,.ebook:focus-visible .ebook-inside{opacity:1;transform:rotateY(9deg) translateX(108px) scale(.95)}
.ebook:hover .ebook-halo{transform:scale(1.12);opacity:1}
.ebook-dot{position:absolute;z-index:6;right:18%;top:48%;width:7px;height:7px;border-radius:50%;background:#84e8ff;box-shadow:0 0 10px #26cafa,0 0 25px rgba(38,202,250,.84);animation:ebookDot 1.8s ease-in-out infinite}
@keyframes ebookDot{0%,100%{transform:scale(.72);opacity:.55}50%{transform:scale(1.22);opacity:1}}

/* Footer */
.site-footer{background:#040d1c;border-top:1px solid rgba(90,171,224,.16);padding:72px 0 26px;color:#a9c0d3}
.footer-grid{display:grid;grid-template-columns:1.25fr .95fr .85fr;gap:80px;padding-bottom:54px}
.footer-grid section{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-brand img{width:145px;margin-bottom:12px}.footer-brand p{max-width:470px;margin:0 0 7px}
.footer-grid h2{font-size:.92rem;color:#fff;margin:0 0 9px}.footer-grid p{font-size:.91rem}.footer-grid a{font-size:.91rem;color:#bbd9ef;transition:.2s ease}.footer-grid a:hover{color:#4ed4ff}
.footer-bottom{border-top:1px solid rgba(91,168,219,.19);padding-top:24px;display:flex;justify-content:space-between;align-items:center;color:#82a7c2;font-size:.82rem}
.footer-bottom button{background:none;border:0;padding:8px 0;color:#badaee;cursor:pointer}.footer-bottom button:hover{color:#fff}

/* Modal form */
.gift-modal{width:min(920px,calc(100% - 24px));max-height:min(92svh,970px);border:0;padding:0;border-radius:27px;background:#f8fbfe;color:#162b41;box-shadow:0 35px 100px rgba(0,7,24,.45);overflow:hidden}
.gift-modal::backdrop{background:rgba(0,8,20,.72);backdrop-filter:blur(9px)}
.modal-shell{position:relative;max-height:min(92svh,970px);overflow:auto;padding:48px clamp(24px,5vw,58px) 48px}
.modal-close{position:absolute;z-index:5;right:20px;top:18px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(26,80,127,.15);background:rgba(255,255,255,.74);color:#173754;font-size:1.45rem;cursor:pointer;display:grid;place-items:center;line-height:1}
.modal-head{padding-right:40px;margin-bottom:32px}.modal-head .eyebrow{color:#0781c6}.modal-head h2{font-size:clamp(2.3rem,5vw,3.7rem);letter-spacing:-.055em;line-height:1;margin:0;color:#092342}.modal-head p:last-child{color:#5b7085;max-width:690px}
.gift-modal form{display:flex;flex-direction:column;gap:28px}.gift-modal fieldset{margin:0;padding:0;border:0}.gift-modal legend{width:100%;font-size:.73rem;text-transform:uppercase;letter-spacing:.11em;color:#375e82;font-weight:850;border-bottom:1px solid #dce8f1;padding-bottom:11px;margin-bottom:17px}
.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.gift-modal label{display:flex;flex-direction:column;gap:7px;color:#344d64;font-size:.79rem;font-weight:700}.gift-modal label span{display:flex;justify-content:space-between;gap:12px}.gift-modal em{font-style:normal;font-weight:500;color:#8395a5;font-size:.72rem}
.gift-modal input,.gift-modal select,.gift-modal textarea{width:100%;border:1px solid #cadbe7;background:#fff;color:#142b41;border-radius:12px;padding:13px 14px;outline:0;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.gift-modal input,.gift-modal select{height:49px}.gift-modal textarea{resize:vertical;min-height:112px}.gift-modal input:focus,.gift-modal select:focus,.gift-modal textarea:focus{border-color:#179ee8;box-shadow:0 0 0 3px rgba(23,158,232,.10)}.gift-modal select:disabled{background:#edf3f7;color:#8fa0ae}
.gift-modal label.has-error input,.gift-modal label.has-error select,.gift-modal label.has-error textarea{border-color:#d65050;background:#fffafa}.gift-modal label small{min-height:0;color:#c83d3d;font-weight:600;font-size:.72rem}.gift-modal label.has-error small{min-height:17px}
.is-hidden{display:none!important}
.hp-field{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;left:-9999px!important}
.form-info{border:1px solid #d9e7f0;border-radius:14px;background:#f5f9fc}.form-info summary{list-style:none;cursor:pointer;padding:14px 16px;font-size:.82rem;font-weight:750;color:#244b6c}.form-info summary::-webkit-details-marker{display:none}.form-info div{border-top:1px solid #dce8ef;padding:4px 16px 14px}.form-info p{margin:10px 0;color:#5d7183;font-size:.81rem}
.privacy-note{margin:0;color:#667c90;font-size:.76rem;line-height:1.55}.privacy-note a,.form-links a{color:#0877bf;text-decoration:underline;text-underline-offset:3px}.form-links{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;font-size:.73rem;color:#8aa0b1}.submit-btn{width:100%;height:55px;border:0}.submit-btn.is-loading .submit-label{opacity:.45}.submit-spinner{display:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;animation:spin .72s linear infinite}.submit-btn.is-loading .submit-spinner{display:block}@keyframes spin{to{transform:rotate(360deg)}}
.form-alert{display:none;padding:11px 13px;border-radius:10px;background:#fff3f3;color:#af3131;border:1px solid #f0cdcd;font-size:.8rem}.form-alert.is-visible{display:block}
.form-state{display:none}.form-state-active{display:block}.success-state,.error-state{text-align:center;max-width:640px;margin:35px auto;padding:35px 0}.success-state h2,.error-state h2{font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.045em;margin:12px 0 18px;color:#0a2846}.success-state p,.error-state p{color:#5b7185}.status-ring{width:72px;height:72px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;font-size:2rem;font-weight:800}.status-ring.success{background:#e8f8f1;color:#159260;border:1px solid #bce8d4}.status-ring.error{background:#fff0f0;color:#cf4646;border:1px solid #f0c5c5}.application-number{margin:26px auto;padding:13px 16px;background:#edf7fc;border:1px solid #cce5f3;border-radius:12px;color:#486b83;max-width:370px}.application-number strong{color:#0877bd;letter-spacing:.06em}.support-line{font-size:.83rem}.support-line a{color:#0877bd}

/* Cookie */
.cookie-panel{position:fixed;z-index:140;left:24px;right:24px;bottom:22px;max-width:1120px;margin:auto;display:none;align-items:center;gap:32px;justify-content:space-between;padding:22px 24px;border:1px solid rgba(114,188,230,.25);border-radius:18px;background:rgba(5,19,39,.94);backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(0,6,20,.35)}.cookie-panel.is-visible{display:flex}.cookie-panel h2{font-size:1rem;margin:0 0 5px;color:#fff}.cookie-panel p{margin:0;color:#a9c0d2;font-size:.8rem;max-width:650px}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.cookie-actions button{white-space:nowrap;border:1px solid rgba(121,188,229,.25);background:rgba(255,255,255,.04);border-radius:10px;padding:10px 13px;color:#cbe2f2;font-size:.72rem;font-weight:750;cursor:pointer}.cookie-actions button.primary{background:#087ff5;border-color:#087ff5;color:#fff}
.cookie-settings{border:0;border-radius:22px;width:min(620px,calc(100% - 24px));padding:0;background:#f8fbfd;color:#17314a;box-shadow:0 35px 90px rgba(0,8,25,.42)}.cookie-settings::backdrop{background:rgba(0,8,20,.65);backdrop-filter:blur(7px)}.cookie-settings form{padding:42px;position:relative}.cookie-settings h2{margin:0 0 24px;font-size:2.1rem;letter-spacing:-.04em}.cookie-settings .eyebrow{color:#0781c6}.cookie-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid #dce7ef}.cookie-row span{display:flex;flex-direction:column;gap:3px}.cookie-row small{color:#758a9b}.cookie-row input{width:20px;height:20px;accent-color:#087ff5}.cookie-modal-actions{margin-top:24px}.cookie-modal-actions .btn{width:100%}

/* Reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}

/* Legal pages */
.legal-body{background:#071226}.legal-header{position:sticky;top:0;z-index:20;height:70px;background:rgba(5,17,36,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(92,169,216,.16);display:flex;align-items:center;padding:0 max(24px,calc((100vw - 1120px)/2))}.legal-header img{width:135px}.legal-main{padding:90px 0 120px}.legal-article{width:min(900px,calc(100% - 40px));margin:auto}.legal-article h1{font-size:clamp(2.5rem,6vw,4.8rem);line-height:1;letter-spacing:-.055em;margin:0 0 35px}.legal-article h2{font-size:1.3rem;margin:36px 0 12px}.legal-article p,.legal-article li{color:#b6cada}.legal-article a{color:#5fd9ff;text-decoration:underline;text-underline-offset:3px}.legal-article ul{padding-left:22px}

@media(max-width:1000px){
  :root{--shell:min(100% - 40px,900px)}
  .experience-grid{grid-template-columns:1fr;gap:20px}.experience-copy{max-width:760px}.ebook{height:560px}
  .glass-panel{width:min(760px,82%)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:50px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:650px}
  .product-shell{padding-inline:52px}.product-prev{left:4px}.product-next{right:4px}.product-progress{left:52px;right:52px}
}
@media(max-width:700px){
  :root{--shell:calc(100% - 30px);--header-h:68px}
  .site-header{padding-inline:17px}.site-header.is-scrolled{height:60px}.brand img{width:118px}.header-gift{height:38px;padding:0 14px;font-size:.68rem}
  .hero-content{padding-top:82px;padding-bottom:38px;align-self:flex-end}.hero h1 span{font-size:clamp(3.45rem,17vw,5.2rem)}.hero h1 strong{font-size:clamp(2rem,10.2vw,3.1rem);margin-top:10px}.hero-lead{font-size:.99rem;line-height:1.5;margin-top:23px!important;max-width:92%!important}.hero-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:25px}.hero-actions .btn{width:100%}.hero-shade{background:linear-gradient(0deg,rgba(1,9,22,.91) 0%,rgba(1,9,22,.66) 47%,rgba(1,9,22,.13) 77%),linear-gradient(90deg,rgba(0,8,20,.25),rgba(0,8,20,.06))}.hero-slide img{object-position:center 40%}
  .why{min-height:auto;padding:96px 0}.why-media img{object-position:58% center}.why-overlay{background:linear-gradient(0deg,rgba(4,16,35,.70),rgba(4,16,35,.19)),linear-gradient(90deg,rgba(3,14,30,.32),transparent)}.glass-panel{width:100%;padding:30px 24px;border-radius:21px;background:rgba(4,18,39,.86)}.why-copy h2{font-size:3rem}.why-copy p{font-size:.91rem}.why-copy p.intro{font-size:1rem}
  .experiences{padding:98px 0}.experience-copy h2{font-size:2.75rem}.experience-copy p:not(.eyebrow){font-size:.94rem}.ebook{height:460px;margin-top:15px}.ebook-page{width:min(305px,77%)}.ebook:hover .ebook-cover,.ebook:focus-visible .ebook-cover{transform:rotateY(-14deg) translateX(-28px)}.ebook:hover .ebook-inside,.ebook:focus-visible .ebook-inside{opacity:.66;transform:rotateY(6deg) translateX(50px) scale(.94)}.ebook-dot{right:15%}
  .products{padding:95px 0 115px}.product-heading{margin-bottom:38px}.product-heading h2{font-size:2.8rem}.product-shell{width:100%;padding:0 0 32px}.product-track{padding-left:15px;padding-right:15px;gap:14px}.product-card{flex-basis:min(86vw,350px);min-height:635px;padding:21px}.product-nav{display:none}.product-progress{left:15px;right:15px}.product-media{height:270px}.product-body h3{min-height:auto}
  .footer-grid{grid-template-columns:1fr;gap:36px}.footer-brand{grid-column:auto}.site-footer{padding-top:54px}.footer-bottom{align-items:flex-start;gap:10px;flex-direction:column}
  .form-grid.two{grid-template-columns:1fr}.gift-modal{width:100%;height:100svh;max-height:none;border-radius:0;margin:0}.modal-shell{max-height:100svh;padding:40px 19px 50px}.modal-head{padding-right:35px}.modal-head h2{font-size:2.55rem}.gift-modal form{gap:24px}.modal-close{right:13px;top:12px}
  .cookie-panel{left:10px;right:10px;bottom:10px;display:none;flex-direction:column;align-items:stretch;gap:17px;padding:18px}.cookie-panel.is-visible{display:flex}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions button.primary{grid-column:1/-1}.cookie-settings form{padding:34px 22px}.cookie-row{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.hero-slide{transform:none!important}.reveal{opacity:1;transform:none}}

/* Card media owns horizontal swipes; product rail remains swipeable outside media. */
.product-media[data-carousel] { touch-action: pan-y; }

/* =========================================================
   VISBODY Hediye Projesi — Revizyon v1.2
   Progressive enhancement + header nav + project drawer + product modal
   ========================================================= */

/* Content remains visible if JavaScript does not load. */
.reveal{opacity:1;transform:none}
.js .reveal{opacity:0;transform:translateY(24px)}
.js .reveal.is-visible{opacity:1;transform:none}

/* Transparent header remains legible over every hero image. */
.site-header::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(1,7,18,.72),rgba(1,7,18,.30) 58%,transparent);opacity:1;transition:opacity .3s ease,background .3s ease}
.site-header.is-scrolled::before{opacity:0}


/* Why: photo-free, controlled premium ambient field. */
.why{min-height:790px;padding:110px 0;background:radial-gradient(circle at 74% 38%,rgba(14,136,222,.16),transparent 30%),radial-gradient(circle at 24% 78%,rgba(21,195,238,.08),transparent 28%),linear-gradient(145deg,#061125 0%,#091b37 54%,#061226 100%)}
.why::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(111,190,235,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(111,190,235,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to right,rgba(0,0,0,.2),#000 42%,#000);pointer-events:none}
.why-ambient{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.why-q{--tx:0px;--ty:0px;position:absolute;color:rgba(101,205,249,.13);font-weight:200;font-family:Georgia,"Times New Roman",serif;line-height:1;filter:drop-shadow(0 0 18px rgba(46,191,244,.08));transform:translate(var(--tx),var(--ty));transition:transform .34s cubic-bezier(.2,.7,.2,1),opacity .25s ease;animation:whyFloat 8s ease-in-out infinite alternate}
.q1{font-size:112px;left:58%;top:11%;animation-delay:-1s}.q2{font-size:70px;left:83%;top:22%;animation-delay:-4s}.q3{font-size:150px;left:69%;top:55%;animation-delay:-2s}.q4{font-size:58px;left:91%;top:72%;animation-delay:-6s}.q5{font-size:76px;left:48%;top:72%;animation-delay:-3s}.q6{font-size:48px;left:53%;top:34%;animation-delay:-5s}.q7{font-size:90px;left:77%;top:82%;animation-delay:-7s}.q8{font-size:52px;left:94%;top:43%;animation-delay:-2.5s}
@keyframes whyFloat{from{margin-top:-8px}to{margin-top:10px}}
.why-gift{position:absolute;width:76px;height:76px;color:rgba(74,207,250,.28);filter:drop-shadow(0 10px 22px rgba(0,130,220,.12));animation:giftFloat 7s ease-in-out infinite alternate}
.why-gift svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.gift1{right:18%;top:18%;transform:rotate(7deg);animation-delay:-2s}.gift2{right:7%;bottom:20%;width:58px;height:58px;transform:rotate(-8deg);animation-delay:-5s}.gift3{right:32%;bottom:12%;width:52px;height:52px;opacity:.7;animation-delay:-3.5s}
@keyframes giftFloat{from{margin-top:-7px}to{margin-top:9px}}
.why-inner{justify-content:flex-start}.glass-panel{width:min(710px,61%);background:rgba(5,20,42,.78);box-shadow:0 36px 90px rgba(0,7,24,.28)}
.student-project-trigger{margin-top:34px;width:100%;padding:22px 0 0;border:0;border-top:1px solid rgba(119,190,235,.25);background:transparent;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#fff;text-align:left;font-weight:720;cursor:pointer}
.student-project-trigger i{width:22px;height:22px;position:relative;flex:0 0 auto}.student-project-trigger i::before,.student-project-trigger i::after{content:"";position:absolute;left:4px;right:4px;top:10px;height:2px;background:#51cafa;border-radius:2px;transition:.25s ease}.student-project-trigger i::after{transform:rotate(90deg)}
.student-project-trigger:hover i::after{transform:rotate(0)}

/* Side drawer for the long student-project explanation. */
.student-drawer{position:fixed;inset:0;z-index:180;visibility:hidden;pointer-events:none}
.student-drawer.is-open{visibility:visible;pointer-events:auto}
.drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(1,8,20,.72);backdrop-filter:blur(7px);opacity:0;transition:opacity .3s ease;cursor:default}
.student-drawer.is-open .drawer-backdrop{opacity:1}
.drawer-panel{position:absolute;inset:0 0 0 auto;width:min(650px,91vw);height:100%;overflow:auto;padding:72px 62px 70px;background:linear-gradient(160deg,#07182f,#071226 68%);border-left:1px solid rgba(89,184,235,.22);box-shadow:-28px 0 90px rgba(0,7,21,.36);transform:translateX(102%);transition:transform .42s cubic-bezier(.16,.8,.22,1);color:#bfd1df}
.student-drawer.is-open .drawer-panel{transform:none}
.drawer-panel h2{margin:0 0 32px;color:#fff;font-size:clamp(2.3rem,4.1vw,4rem);font-weight:300;line-height:1;letter-spacing:-.05em}.drawer-panel h2 strong{font-weight:800}.drawer-panel>p:not(.eyebrow){margin:18px 0}.drawer-panel>p:first-of-type:not(.eyebrow){color:#fff}.drawer-close,.product-modal-close{position:absolute;right:22px;top:18px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(115,191,234,.22);background:rgba(255,255,255,.04);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}.drawer-accent{margin-top:30px!important;padding:18px 0 18px 18px;border-left:2px solid var(--cyan);color:#9ee7ff!important}

/* Reduced vertical excess in expert-experience module. */
.experiences{padding:118px 0}.ebook{height:545px}.ebook-page{width:min(365px,70%)}

/* Product rail edge is intentionally softened instead of hard-clipped. */
.product-shell::after{content:"";position:absolute;z-index:3;top:0;right:0;bottom:28px;width:88px;background:linear-gradient(90deg,transparent,rgba(6,18,38,.95));pointer-events:none}
.product-card.is-hover-preview .product-images img{transform:scale(.98)}
.product-card.is-hover-preview .product-images img.is-active{transform:scale(1.025)}

/* In-page product detail. Existing external product URL remains as fallback if JS is unavailable. */
.product-modal{position:fixed;inset:0;z-index:190;visibility:hidden;pointer-events:none}
.product-modal.is-open{visibility:visible;pointer-events:auto}
.product-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,8,20,.78);backdrop-filter:blur(9px);opacity:0;transition:opacity .3s ease;cursor:default}
.product-modal.is-open .product-modal-backdrop{opacity:1}
.product-modal-panel{position:absolute;left:50%;top:50%;width:min(1080px,calc(100% - 34px));max-height:min(790px,calc(100svh - 36px));overflow:auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:0;border:1px solid rgba(95,183,235,.23);border-radius:28px;background:linear-gradient(145deg,#071a35,#061226);box-shadow:0 45px 120px rgba(0,7,24,.55);transform:translate(-50%,-46%) scale(.975);opacity:0;transition:transform .36s cubic-bezier(.16,.8,.22,1),opacity .3s ease;color:#fff}
.product-modal.is-open .product-modal-panel{transform:translate(-50%,-50%) scale(1);opacity:1}
.product-modal-media{min-height:580px;position:relative;display:flex;align-items:center;justify-content:center;padding:55px;background:radial-gradient(circle at 50% 45%,rgba(25,166,237,.18),transparent 45%),linear-gradient(145deg,rgba(10,35,67,.75),rgba(4,18,38,.82));border-radius:28px 0 0 28px;overflow:hidden}
.product-modal-images{position:relative;width:100%;height:430px;display:grid;place-items:center}.product-modal-images img{position:absolute;max-height:420px;max-width:96%;object-fit:contain;opacity:0;transform:scale(.965);transition:opacity .34s ease,transform .42s ease;filter:drop-shadow(0 30px 24px rgba(0,0,0,.26))}.product-modal-images img.is-active{opacity:1;transform:scale(1)}
.product-modal-dots{position:absolute;left:0;right:0;bottom:28px;display:flex;justify-content:center;gap:7px}.product-modal-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(161,220,250,.28);cursor:pointer;transition:.2s}.product-modal-dots button.is-active{width:22px;border-radius:10px;background:#42d5ff}
.product-modal-copy{padding:70px 58px 55px;display:flex;flex-direction:column;align-items:flex-start}.product-modal-brand{margin:2px 0 2px;color:#9de8ff;letter-spacing:.19em;font-size:.72rem;font-weight:800}.product-modal-copy h2{margin:0;color:#fff;font-size:clamp(3.2rem,6vw,5.6rem);line-height:.94;letter-spacing:-.06em}.product-modal-copy h3{margin:24px 0 13px;font-size:1.42rem;line-height:1.18;letter-spacing:-.025em}.product-modal-copy>p:not(.eyebrow):not(.product-modal-brand){margin:0;color:#adc2d3}.product-modal-benefits{display:grid;gap:8px;margin:26px 0 30px;width:100%}.product-modal-benefits span{padding:10px 0;border-top:1px solid rgba(107,184,231,.16);font-size:.83rem;color:#d5e6f2}.product-modal-benefits span::before{content:"";display:inline-block;width:6px;height:6px;margin-right:10px;border-radius:50%;background:#34cfff;box-shadow:0 0 12px rgba(52,207,255,.45)}.product-modal-link{margin-top:auto;text-align:center}

/* Native <dialog> fallback for older Safari. */
dialog.is-fallback-open{display:block!important;position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;z-index:200!important}

@media(max-width:1100px){.header-nav{gap:17px}.header-nav a{font-size:.65rem}.header-nav svg{display:none}}
@media(max-width:820px){
  .header-nav{display:none}
  .why{min-height:auto;padding:96px 0}.why::before{opacity:.65}.glass-panel{width:100%}.why-q{opacity:.65}.q1{left:70%;top:8%}.q2{left:88%;top:28%}.q3{left:71%;top:62%}.q4,.q5,.q6,.q7,.q8{display:none}.gift1{right:8%;top:17%}.gift2{right:7%;bottom:10%}.gift3{display:none}
  .drawer-panel{width:100%;padding:64px 25px 55px;border-left:0}.drawer-panel h2{font-size:2.7rem}
  .experiences{padding:94px 0}.ebook{height:450px}
  .product-shell::after{display:none}
  .product-modal-panel{grid-template-columns:1fr;top:auto;bottom:0;left:0;width:100%;max-height:94svh;border-radius:24px 24px 0 0;transform:translateY(102%);opacity:1}.product-modal.is-open .product-modal-panel{transform:none}.product-modal-media{min-height:320px;padding:35px 24px;border-radius:24px 24px 0 0}.product-modal-images{height:270px}.product-modal-images img{max-height:265px}.product-modal-dots{bottom:16px}.product-modal-copy{padding:34px 24px 38px}.product-modal-copy h2{font-size:3.35rem}.product-modal-copy h3{margin-top:18px}.product-modal-link{width:100%}
}
@media(hover:none),(pointer:coarse){.why-q{transition:none}.product-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.why-q,.why-gift{animation:none!important}.drawer-panel,.drawer-backdrop,.product-modal-panel,.product-modal-backdrop{transition:none!important}}
.product-modal-closing{margin:0 0 28px!important;padding-top:17px;border-top:1px solid rgba(107,184,231,.16);color:#d7e5ef!important;font-size:.88rem;line-height:1.55}

/* =========================================================
   VISBODY Hediye Projesi — Revizyon v1.3
   Social rail + ambient icon field refinements
   ========================================================= */

/* Fixed social rail */
.social-rail{position:fixed;z-index:95;left:20px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:11px}
.social-link{position:relative;display:flex;align-items:center;gap:10px}
.social-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(112,189,234,.26);background:linear-gradient(160deg,rgba(7,27,54,.94),rgba(9,42,79,.86));backdrop-filter:blur(12px);box-shadow:0 12px 34px rgba(0,7,24,.22);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease,background .24s ease}
.social-icon svg{width:21px;height:21px;fill:none;stroke:#e8f7ff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.social-icon .social-fill{fill:#e8f7ff;stroke:none}
.social-label{position:absolute;left:60px;top:50%;transform:translate(-12px,-50%);padding:9px 12px;border:1px solid rgba(118,188,231,.18);border-radius:12px;background:rgba(5,18,38,.92);color:#fff;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease;box-shadow:0 16px 34px rgba(0,7,24,.26)}
.social-link:hover .social-icon,.social-link:focus-visible .social-icon{transform:translateX(3px) scale(1.06);border-color:rgba(83,208,250,.55);background:linear-gradient(160deg,rgba(8,55,96,.96),rgba(7,127,245,.88));box-shadow:0 18px 40px rgba(8,127,245,.22),0 0 22px rgba(52,210,255,.18)}
.social-link:hover .social-label,.social-link:focus-visible .social-label{opacity:1;transform:translate(0,-50%)}

/* Refined ambient field visuals */
.why-q{font-weight:300;color:rgba(128,223,255,.15);text-shadow:0 8px 34px rgba(45,162,232,.18),0 0 16px rgba(77,219,255,.08)}
.why-gift{--tx:0px;--ty:0px;position:absolute;width:78px;height:78px;color:rgba(118,226,255,.8);filter:drop-shadow(0 14px 30px rgba(0,130,220,.14));transform:translate(var(--tx),var(--ty)) rotate(var(--gift-rot,0deg));transform-origin:center;transition:transform .34s cubic-bezier(.2,.7,.2,1),opacity .25s ease;animation:giftFloat 7s ease-in-out infinite alternate}
.why-gift svg{width:100%;height:100%;overflow:visible}
.why-gift svg path{stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gift1{right:18%;top:18%;--gift-rot:7deg;animation-delay:-2s}.gift2{right:7%;bottom:20%;width:58px;height:58px;--gift-rot:-8deg;animation-delay:-5s}.gift3{right:32%;bottom:12%;width:52px;height:52px;opacity:.7;--gift-rot:-4deg;animation-delay:-3.5s}

@media(max-width:1180px){.social-rail{left:12px}}
@media(max-width:900px){.social-label{display:none}}
@media(max-width:820px){.social-rail{left:12px;top:auto;bottom:18px;transform:none;flex-direction:row}}
@media(max-width:560px){.social-icon{width:44px;height:44px}.social-icon svg{width:19px;height:19px}.social-rail{left:10px;bottom:12px;gap:8px}}

/* =========================================================
   VISBODY Hediye Projesi — v1.5 visual/system revision
   ========================================================= */

/* Header: cleaner text navigation, no decorative icons. */
.site-header{height:76px;padding:0 clamp(22px,4vw,68px);gap:26px;background:linear-gradient(180deg,rgba(2,12,29,.72),rgba(2,12,29,.14));border-bottom:1px solid transparent;transition:background .28s ease,border-color .28s ease,box-shadow .28s ease,backdrop-filter .28s ease}
.site-header.is-scrolled{background:rgba(4,17,36,.88);border-bottom-color:rgba(121,196,237,.15);box-shadow:0 12px 34px rgba(0,7,22,.17);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.site-header .brand{flex:0 0 auto}.site-header .brand img{width:clamp(112px,8.8vw,154px)}
.header-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(22px,2.5vw,42px)}
.header-nav a{position:relative;color:rgba(240,248,255,.78);font-size:.76rem;font-weight:700;letter-spacing:.035em;white-space:nowrap;padding:27px 0 24px;transition:color .22s ease,text-shadow .22s ease,transform .22s ease}
.header-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,#19a6ff,#55e4ff);box-shadow:0 0 12px rgba(48,207,255,.4);transition:right .26s cubic-bezier(.2,.75,.2,1)}
.header-nav a:hover,.header-nav a:focus-visible{color:#fff;text-shadow:0 0 18px rgba(91,220,255,.18);transform:translateY(-1px)}
.header-nav a:hover::after,.header-nav a:focus-visible::after{right:0}
.header-gift{margin-left:8px;padding:11px 20px;border-radius:999px;border:1px solid rgba(111,210,250,.5);background:linear-gradient(135deg,rgba(16,124,231,.86),rgba(31,193,239,.82));box-shadow:0 10px 26px rgba(0,119,224,.18),inset 0 1px 0 rgba(255,255,255,.14);color:#fff;font-size:.76rem;font-weight:800;letter-spacing:.045em;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.header-gift:hover,.header-gift:focus-visible{transform:translateY(-2px);box-shadow:0 15px 35px rgba(0,139,234,.28),0 0 24px rgba(43,215,255,.12);filter:brightness(1.08)}

/* Why field: isolated positions + richer float/repel motion. */
.why{overflow:hidden;isolation:isolate}.why-ambient{position:absolute;inset:0;pointer-events:none;z-index:0}.why-inner{position:relative;z-index:2}
.why-float{--repel-x:0px;--repel-y:0px;position:absolute;display:grid;place-items:center;translate:var(--repel-x) var(--repel-y);will-change:translate;transition:opacity .3s ease}
.why-float-inner{display:grid;place-items:center;animation:whyDrift 7.8s ease-in-out infinite alternate;will-change:transform}
.why-q{font-size:clamp(2.5rem,5vw,5.6rem);font-weight:250;color:rgba(85,199,250,.16);text-shadow:0 0 24px rgba(68,201,255,.11)}
.why-q .why-float-inner{animation-name:whyQuestionDrift}.why-gift{width:clamp(66px,6.7vw,116px);height:clamp(66px,6.7vw,116px);color:rgba(115,226,255,.78);filter:drop-shadow(0 18px 34px rgba(5,119,214,.16))}.why-gift svg{width:100%;height:100%;overflow:visible}.why-gift path{fill:rgba(12,70,132,.13);stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.why-gift .gift-accent{stroke:#33a9ff;stroke-width:2.3;filter:drop-shadow(0 0 7px rgba(51,169,255,.38))}
.q1{left:56%;top:13%}.q2{left:72%;top:33%;font-size:clamp(2rem,3.7vw,4.1rem)}.q3{right:7%;top:20%;font-size:clamp(1.7rem,3.1vw,3.4rem)}.q4{left:64%;bottom:14%;font-size:clamp(3rem,5.7vw,6rem)}.q5{right:8%;bottom:24%;font-size:clamp(2rem,3.4vw,3.8rem)}
.gift1{right:18%;top:10%}.gift1 .why-float-inner{animation-delay:-2.4s}.gift2{left:57%;top:48%;width:78px;height:78px}.gift2 .why-float-inner{animation-delay:-5.2s}.gift3{right:16%;bottom:9%;width:72px;height:72px}.gift3 .why-float-inner{animation-delay:-3.6s}
@keyframes whyDrift{0%{transform:translate3d(-4px,-10px,0) rotate(-6deg) scale(.96)}100%{transform:translate3d(7px,13px,0) rotate(7deg) scale(1.04)}}
@keyframes whyQuestionDrift{0%{transform:translate3d(-6px,-11px,0) rotate(-4deg)}100%{transform:translate3d(9px,15px,0) rotate(6deg)}}

/* E-book trigger remains visual-only; content opens in the minimal frame viewer. */
button.ebook{appearance:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0;text-align:initial}

/* -------- Advanced product catalogue (ported behavior, no React dependency) -------- */
.products{padding-bottom:122px;background:radial-gradient(70% 44% at 50% 64%,rgba(12,74,135,.12),transparent 70%),linear-gradient(180deg,#061126 0%,#090b13 44%,#090a11 100%)}
.product-heading{padding-bottom:34px}.catalog-toolbar{width:min(650px,calc(100% - 34px));margin:0 auto 34px;min-height:54px;padding:8px 14px;display:flex;align-items:center;justify-content:center;gap:14px;border:1px dashed rgba(134,145,177,.24);border-radius:13px;background:rgba(13,15,27,.52);backdrop-filter:blur(8px);color:#8893aa}.catalog-toolbar>span{font-size:.58rem;font-weight:800;letter-spacing:.18em}.catalog-toolbar>div{display:flex;gap:7px}.catalog-toolbar button{border:1px solid #2b2d3e;background:#131520;color:#8992aa;border-radius:999px;padding:7px 14px;font-size:.7rem;font-weight:800;cursor:pointer;transition:.2s}.catalog-toolbar button:hover{color:#fff;border-color:#4d526a}.catalog-toolbar button.is-active{background:linear-gradient(120deg,#f0d167,#c49a1f);color:#191403;border-color:#d4af37;box-shadow:0 0 18px rgba(212,175,55,.12)}.catalog-toolbar small{font-size:.67rem;color:#7f8a9e}
.catalog-shell{position:relative;max-width:1760px;margin:0 auto;padding:0 54px}.catalog-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 20px 16px;align-items:flex-start;overscroll-behavior-inline:contain}.catalog-track::-webkit-scrollbar{display:none}.catalog-cell{flex:0 0 min(360px,88vw);width:min(360px,88vw);scroll-snap-align:center}.catalog-theme{height:38px;margin-bottom:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8992aa}.theme-dots{display:flex;gap:6px}.theme-dot{position:relative;width:13px;height:13px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:var(--dot);cursor:pointer;box-shadow:0 0 0 2px transparent;transition:.18s}.theme-dot.is-active{box-shadow:0 0 0 2px #0d0e16,0 0 0 3px rgba(255,255,255,.85);transform:scale(1.05)}.catalog-theme>span{font-size:.56rem;letter-spacing:.11em}
.catalog-card{--bg:#1a1a2e;--surface:#16213e;--text:#fff;--muted:#9da4b6;--accent:#c9a227;--border:#2a2a4a;--onaccent:#171204;position:relative;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:radial-gradient(130% 65% at 100% 0%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 55%),var(--bg);box-shadow:0 14px 44px rgba(0,0,0,.38);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.catalog-card:hover{transform:translateY(-3px);box-shadow:0 22px 58px rgba(0,0,0,.46)}
.catalog-card.theme-dark_elegant{--bg:#1a1a2e;--surface:#16213e;--text:#fff;--muted:#a0a0b0;--accent:#c9a227;--border:#2a2a4a;--onaccent:#171204;border-radius:16px}.catalog-card.theme-exclusive{--bg:#09090c;--surface:#131318;--text:#f7f7f5;--muted:#9c9ca8;--accent:#d8dee8;--border:#34343e;--onaccent:#0b0b0e;border-radius:22px}.catalog-card.theme-premium_gold{--bg:#0f0f1a;--surface:#1a1a2e;--text:#f5f5f5;--muted:#9ca3af;--accent:#d4af37;--border:#705a19;--onaccent:#141002;border-radius:20px}.catalog-card.theme-light_clinical{--bg:#fff;--surface:#f8fafc;--text:#0f172a;--muted:#475569;--accent:#0ea5e9;--border:#dbe7ef;--onaccent:#fff;border-radius:10px;box-shadow:0 8px 30px rgba(2,132,199,.12)}
.catalog-accent{height:4px;background:transparent}.theme-light_clinical .catalog-accent{background:linear-gradient(90deg,#0ea5e9,#7dd3fc)}.theme-premium_gold .catalog-accent{background:linear-gradient(90deg,#7a5c10,#f0d16e,#7a5c10)}
.catalog-card-head{height:86px;padding:17px 20px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.catalog-card-head>div{min-width:0}.catalog-card-head span{display:block;color:var(--muted);font-size:.62rem;font-weight:700;letter-spacing:.2em}.catalog-card-head strong{display:block;margin-top:6px;color:var(--text);font-family:"Trebuchet MS","Segoe UI",sans-serif;font-size:1.18rem;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-card-head i{display:block;width:31px;height:2px;margin-top:7px;background:var(--accent)}.catalog-quick{width:36px;height:36px;flex:0 0 auto;border:1px solid var(--border);border-radius:50%;background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent);font-size:1.08rem;cursor:pointer;transition:.2s}.catalog-quick:hover{transform:rotate(7deg) scale(1.07);box-shadow:0 0 20px color-mix(in srgb,var(--accent) 28%,transparent)}
.catalog-media{--mx:50%;--my:50%;position:relative;margin:0 20px 17px;aspect-ratio:9/16;border:1px solid color-mix(in srgb,var(--accent) 62%,var(--border));border-radius:12px;overflow:hidden;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 42%),#05070b;user-select:none;touch-action:pan-y}.catalog-slides,.catalog-slide{position:absolute;inset:0}.catalog-slide{display:grid;place-items:center;opacity:0;transform:scale(.985);pointer-events:none;transition:opacity .3s ease,transform .36s ease}.catalog-slide.is-active{opacity:1;transform:none;pointer-events:auto}.catalog-slide img,.catalog-slide video{width:100%;height:100%;object-fit:contain;display:block}.catalog-slide video{background:#000;object-fit:cover}.catalog-spot{position:absolute;inset:0;pointer-events:none;background:radial-gradient(170px circle at var(--mx) var(--my),rgba(255,255,255,.11),transparent 62%);opacity:0;transition:opacity .25s}.catalog-media:hover .catalog-spot{opacity:1}.video-chip{position:absolute;left:12px;bottom:12px;padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:.58rem;font-weight:800;letter-spacing:.11em;backdrop-filter:blur(8px)}
.catalog-media-nav{position:absolute;z-index:5;top:50%;width:32px;height:32px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(10,11,16,.56);color:#fff;font-size:1.45rem;line-height:1;cursor:pointer;backdrop-filter:blur(7px);opacity:.72;transition:.2s}.catalog-media-nav:hover{opacity:1;transform:translateY(-50%) scale(1.08)}.catalog-media-nav.prev{left:9px}.catalog-media-nav.next{right:9px}.catalog-media-count{position:absolute;z-index:4;left:10px;top:10px;padding:5px 7px;border-radius:999px;background:rgba(0,0,0,.44);color:#fff;font-size:.56rem;font-weight:800}.catalog-media-dots{position:absolute;z-index:4;left:50%;bottom:10px;display:flex;gap:5px;transform:translateX(-50%)}.catalog-media-dots button{width:5px;height:5px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.42);cursor:pointer;transition:.2s}.catalog-media-dots button.is-active{width:18px;background:var(--accent)}
.catalog-copy{padding:0 20px 10px}.catalog-category{display:inline-block;max-width:100%;padding:4px 7px;border-radius:7px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-size:.6rem;font-weight:800;letter-spacing:.045em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-exclusive .catalog-category{background:transparent;border-bottom:1px solid var(--accent);border-radius:0}.theme-light_clinical .catalog-category{background:transparent;border:1px solid var(--accent)}.catalog-desc{position:relative;height:116px;margin-top:10px;overflow:hidden;transition:height .32s ease}.catalog-desc.is-expanded{height:auto;max-height:330px;overflow:auto;padding-right:4px}.catalog-desc p{margin:0;color:var(--muted);font-size:.77rem;line-height:1.65}.catalog-desc:not(.is-expanded)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:38px;background:linear-gradient(to top,var(--bg),transparent);pointer-events:none}.catalog-more{height:26px;padding:0;border:0;background:transparent;color:var(--accent);font-size:.65rem;font-weight:800;cursor:pointer}.catalog-more[hidden]{visibility:hidden;display:block}
.catalog-docs{min-height:58px;padding:0 20px 13px;display:flex;gap:7px}.catalog-doc{flex:1;min-width:0;height:48px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);cursor:pointer;transition:.2s}.catalog-doc:hover{border-color:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 16%,transparent);transform:translateY(-1px)}.doc-symbol{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--onaccent);font-size:.65rem}.catalog-doc>span:last-child{display:flex;flex-direction:column;text-align:left;font-size:.58rem;font-weight:800}.catalog-doc small{color:var(--muted);font-size:.46rem;font-weight:600}.catalog-card-actions{display:flex;gap:8px;padding:0 20px 20px}.catalog-card-actions>*{height:40px;flex:1;display:flex;align-items:center;justify-content:center;border-radius:12px;font-size:.68rem;font-weight:800;cursor:pointer;transition:.2s}.catalog-share{border:1px solid var(--border);background:var(--surface);color:var(--text)}.catalog-share:hover{border-color:var(--accent)}.catalog-offer{border:0;background:var(--accent);color:var(--onaccent);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 14%,transparent)}.catalog-offer:hover{transform:translateY(-1px);filter:brightness(1.05)}
.catalog-rail-nav{position:absolute;z-index:10;top:50%;width:44px;height:44px;transform:translateY(-50%);border:1px solid #2b2d3e;border-radius:50%;background:rgba(17,18,28,.93);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.25);transition:.2s}.catalog-rail-nav:hover{border-color:#5c6179;transform:translateY(-50%) scale(1.06)}.catalog-rail-nav.prev{left:5px}.catalog-rail-nav.next{right:5px}.catalog-progress{position:relative;width:min(420px,65vw);height:8px;margin:20px auto 0;border-radius:999px;background:rgba(255,255,255,.1);cursor:pointer;touch-action:none}.catalog-progress button{position:absolute;left:0;top:0;height:100%;min-width:14%;padding:0;border:0;border-radius:999px;background:linear-gradient(90deg,#ad8420,#e1bd4d);cursor:grab}.catalog-progress button:active{cursor:grabbing}
.catalog-shell[data-mode="grid"]{padding:0 22px}.catalog-shell[data-mode="grid"] .catalog-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),360px));justify-content:center;gap:26px;overflow:visible;padding:8px 0 0;scroll-snap-type:none}.catalog-shell[data-mode="grid"] .catalog-cell{width:360px;max-width:100%;flex:none}.catalog-shell[data-mode="grid"] .catalog-rail-nav,.catalog-shell[data-mode="grid"] .catalog-progress{display:none}

/* Product detail modal additions. */
.product-modal-image-nav{position:absolute;z-index:4;top:50%;width:42px;height:42px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(3,12,25,.54);color:#fff;font-size:1.6rem;cursor:pointer}.product-modal-image-nav.prev{left:20px}.product-modal-image-nav.next{right:20px}.product-modal-actions{display:flex;gap:8px;margin:0 0 18px}.product-modal-actions button{padding:9px 14px;border:1px solid rgba(83,190,240,.23);border-radius:999px;background:rgba(255,255,255,.04);color:#ccecff;font-size:.69rem;font-weight:800;cursor:pointer}.product-modal-copy .product-modal-link{width:100%;margin-top:auto}

/* Minimal iframe/video viewer: only the close control is visible around content. */
.media-viewer{position:fixed;inset:0;z-index:235;visibility:hidden;pointer-events:none}.media-viewer.is-open{visibility:visible;pointer-events:auto}.media-viewer-backdrop{position:absolute;inset:0;border:0;background:rgba(1,7,17,.88);backdrop-filter:blur(10px);cursor:default}.media-viewer-panel{position:absolute;inset:clamp(18px,3vw,42px);overflow:hidden;border:1px solid rgba(114,191,233,.22);border-radius:22px;background:#050a12;box-shadow:0 35px 110px rgba(0,0,0,.55)}.media-viewer-close{position:absolute;z-index:5;right:14px;top:14px;width:42px;height:42px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(4,13,27,.72);color:#fff;font-size:1.7rem;cursor:pointer;backdrop-filter:blur(10px)}#mediaViewerContent{width:100%;height:100%}#mediaViewerContent iframe,#mediaViewerContent video{width:100%;height:100%;border:0;display:block;background:#000}#mediaViewerContent video{object-fit:contain}

/* Gift section — immersive but controlled, using real supplied artwork. */
.gift-showcase{position:relative;overflow:hidden;min-height:820px;padding:118px 0;background:radial-gradient(50% 60% at 75% 48%,rgba(29,144,230,.17),transparent 68%),radial-gradient(35% 45% at 15% 82%,rgba(208,32,39,.10),transparent 72%),linear-gradient(145deg,#061327,#071c35 55%,#050d1b);isolation:isolate}.gift-showcase::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(89,159,211,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(89,159,211,.035) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent)}.gift-showcase-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,.92fr) minmax(360px,.72fr);align-items:center;gap:clamp(40px,8vw,130px)}.gift-copy{max-width:640px}.gift-copy h2{margin:10px 0 24px;color:#fff;font-size:clamp(3.2rem,6.4vw,6.3rem);font-weight:300;line-height:.94;letter-spacing:-.055em}.gift-copy h2 strong{font-weight:800}.gift-copy>p:not(.eyebrow){max-width:600px;color:#b7cadd;font-size:1rem;line-height:1.8}.gift-copy .btn{margin-top:20px}
.gift-story-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:610px}.gift-story-card{position:relative;width:min(338px,68vw);aspect-ratio:9/16;padding:0;border:1px solid rgba(124,202,242,.27);border-radius:27px;overflow:hidden;background:#07101d;box-shadow:0 40px 80px rgba(0,5,18,.42),0 0 55px rgba(24,144,223,.12);cursor:zoom-in;transition:transform .28s ease,box-shadow .28s ease}.gift-story-card:hover{transform:translateY(-5px) rotate(.35deg);box-shadow:0 48px 95px rgba(0,5,18,.5),0 0 70px rgba(24,144,223,.18)}.gift-story-slides,.gift-story-slides img{position:absolute;inset:0;width:100%;height:100%}.gift-story-slides img{object-fit:cover;opacity:0;transform:scale(1.02);transition:opacity .42s ease,transform 5s linear}.gift-story-slides img.is-active{opacity:1;transform:scale(1.075)}.gift-story-progress{position:absolute;z-index:4;top:13px;left:13px;right:13px;display:flex;gap:4px}.gift-story-progress span{flex:1;height:3px;border-radius:99px;background:rgba(255,255,255,.26);overflow:hidden}.gift-story-progress span::after{content:"";display:block;width:0;height:100%;background:#fff}.gift-story-progress span.is-done::after{width:100%}.gift-story-progress span.is-active::after{animation:storyFill 5s linear forwards}.gift-story-index{position:absolute;z-index:4;right:14px;bottom:13px;padding:7px 9px;border-radius:999px;background:rgba(0,0,0,.48);color:#fff;font-size:.65rem;font-weight:700;backdrop-filter:blur(7px)}.gift-story-nav{position:absolute;z-index:6;top:50%;width:44px;height:44px;transform:translateY(-50%);border:1px solid rgba(121,200,241,.25);border-radius:50%;background:rgba(5,18,37,.72);color:#fff;font-size:1.8rem;cursor:pointer;backdrop-filter:blur(9px);transition:.2s}.gift-story-nav:hover{transform:translateY(-50%) scale(1.08);border-color:rgba(83,210,255,.55)}.gift-story-nav.prev{left:max(0px,calc(50% - 230px))}.gift-story-nav.next{right:max(0px,calc(50% - 230px))}

/* Full-screen Instagram-like gift story. */
.story-viewer{position:fixed;inset:0;z-index:245;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.95);visibility:hidden;pointer-events:none}.story-viewer.is-open{visibility:visible;pointer-events:auto}.story-frame{position:relative;width:min(100vw,calc(100svh * .5625));height:min(100svh,177.78vw);max-height:100svh;background:#000;overflow:hidden}.story-frame img{width:100%;height:100%;object-fit:contain;display:block}.story-bars{position:absolute;z-index:5;top:max(12px,env(safe-area-inset-top));left:50%;width:min(calc(100vw - 90px),calc(100svh * .5625 - 34px));transform:translateX(-50%);display:flex;gap:4px}.story-bars span{flex:1;height:3px;border-radius:99px;background:rgba(255,255,255,.27);overflow:hidden}.story-bars span::after{content:"";display:block;height:100%;width:0;background:#fff}.story-bars span.is-done::after{width:100%}.story-bars span.is-active::after{animation:storyFill 5s linear forwards}.story-viewer-close{position:absolute;z-index:8;right:max(15px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font-size:1.7rem;cursor:pointer}.story-hit{position:absolute;z-index:4;top:0;bottom:0;width:42%;border:0;background:transparent;cursor:pointer}.story-hit.prev{left:0}.story-hit.next{right:0}@keyframes storyFill{from{width:0}to{width:100%}}

.site-toast{position:fixed;z-index:300;left:50%;bottom:24px;transform:translate(-50%,18px);opacity:0;padding:10px 16px;border:1px solid rgba(106,190,235,.22);border-radius:999px;background:rgba(5,18,38,.94);color:#fff;font-size:.74rem;font-weight:700;pointer-events:none;transition:.22s}.site-toast.is-visible{opacity:1;transform:translate(-50%,0)}


/* =========================================================
   VISBODY Hediye Projesi — v1.8 FINAL POLISH
   One visual system for desktop + tablet + mobile.
   ========================================================= */
:root{
  --tone-black:#04080f;
  --tone-ink:#060b14;
  --tone-midnight:#061326;
  --tone-navy:#071a31;
  --tone-blue:#082541;
  --tone-footer:#040d1c;
}

/* Seamless section-to-section color system. */
.hero::after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:clamp(100px,13vw,190px);pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(6,19,38,.44) 52%,var(--tone-midnight) 100%)}
.why{background:radial-gradient(circle at 74% 38%,rgba(14,136,222,.15),transparent 31%),radial-gradient(circle at 24% 78%,rgba(21,195,238,.07),transparent 29%),linear-gradient(180deg,var(--tone-midnight) 0%,#07172c 58%,#08182f 100%)}
.experiences{background:radial-gradient(circle at 78% 42%,rgba(15,142,218,.15),transparent 29%),linear-gradient(180deg,#08182f 0%,#071329 58%,#070a12 100%)}
.products{position:relative;overflow:hidden;padding:126px 0 112px;background:radial-gradient(68% 40% at 50% 58%,rgba(13,69,126,.10),transparent 72%),linear-gradient(180deg,#070a12 0%,#070910 45%,#07111f 78%,var(--tone-navy) 100%)}
.products::after{display:none!important}
.gift-showcase{position:relative;overflow:hidden;min-height:790px;margin:0;padding:118px 0 118px;background:radial-gradient(44% 48% at 76% 47%,rgba(43,155,241,.16),transparent 69%),radial-gradient(27% 32% at 18% 76%,rgba(30,113,202,.07),transparent 72%),linear-gradient(180deg,var(--tone-navy) 0%,#071d37 20%,var(--tone-blue) 52%,#071b31 80%,var(--tone-footer) 100%)}
.gift-showcase::after{display:none!important}
.site-footer{background:var(--tone-footer);border-top:0}

/* Header: visual hierarchy + current section feedback. */
.header-nav a{letter-spacing:.025em;color:rgba(239,248,255,.76)}
.header-nav a.is-active{color:#fff;text-shadow:0 0 18px rgba(81,214,255,.22)}
.header-nav a.is-active::after{right:0}
.header-gift{white-space:nowrap}

/* Geometrically centered arrows: no font-glyph optical offset. */
.catalog-rail-nav,.catalog-media-nav,.gift-story-nav,.product-modal-image-nav,.catalog-quick{display:grid;place-items:center;padding:0;font-size:0!important;line-height:0;text-align:center}
.catalog-quick{position:relative}
.catalog-rail-nav::before,.catalog-media-nav::before,.gift-story-nav::before,.product-modal-image-nav::before{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform-origin:50% 50%}
.catalog-rail-nav.next::before,.catalog-media-nav.next::before,.gift-story-nav.next::before,.product-modal-image-nav.next::before{transform:translate(-58%,-50%) rotate(45deg)}
.catalog-rail-nav.prev::before,.catalog-media-nav.prev::before,.gift-story-nav.prev::before,.product-modal-image-nav.prev::before{transform:translate(-42%,-50%) rotate(-135deg)}
.catalog-quick::before{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-top:1.7px solid currentColor;border-right:1.7px solid currentColor;transform:translate(-44%,-58%)}
.catalog-quick::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1.7px;border-radius:4px;background:currentColor;transform:translate(-55%,20%) rotate(-45deg);transform-origin:right center}

/* Catalogue edge fade instead of abrupt clipping. */
.catalog-shell{position:relative;padding-left:66px;padding-right:66px}
.catalog-shell::before,.catalog-shell::after{content:"";position:absolute;z-index:8;top:0;bottom:34px;width:72px;pointer-events:none}
.catalog-shell::before{left:0;background:linear-gradient(90deg,#070a12 8%,rgba(7,10,18,.88) 35%,rgba(7,10,18,0) 100%)}
.catalog-shell::after{right:0;background:linear-gradient(270deg,#070a12 8%,rgba(7,10,18,.88) 35%,rgba(7,10,18,0) 100%)}
.catalog-shell[data-mode="grid"]::before,.catalog-shell[data-mode="grid"]::after{display:none}
.catalog-rail-nav{z-index:12;background:rgba(12,14,24,.94)}
.catalog-rail-nav.prev{left:11px}.catalog-rail-nav.next{right:11px}
.catalog-track{padding:8px 28px 18px}

/* Unified initial card mood, while per-card themes remain selectable. */
.catalog-card.theme-dark_elegant{--bg:#10111c;--surface:#181b2d;--text:#f7fbff;--muted:#a8b3c5;--accent:#36b9f4;--border:#2a3347;--onaccent:#06121d;background:radial-gradient(125% 64% at 100% 0%,rgba(25,153,224,.09),transparent 54%),linear-gradient(155deg,#11131f,#090b12 72%)}
.catalog-card{display:flex;flex-direction:column;min-height:100%;backdrop-filter:blur(4px)}
.catalog-copy{padding:2px 20px 15px}
.catalog-desc{height:154px;margin-top:12px;padding-right:2px}
.catalog-desc.is-expanded{height:300px;max-height:300px;overflow:auto;padding-right:6px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent) 52%,transparent) transparent}
.catalog-desc p{margin:0;color:var(--text);font-size:.78rem;line-height:1.72;font-weight:520;opacity:.94}
.catalog-desc ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.catalog-desc li{position:relative;padding-left:16px;color:var(--muted);font-size:.73rem;line-height:1.55}
.catalog-desc li::before{content:"";position:absolute;left:1px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}
.catalog-desc:not(.is-expanded)::after{height:52px;background:linear-gradient(to top,var(--bg) 22%,color-mix(in srgb,var(--bg) 84%,transparent) 58%,transparent 100%)}
.catalog-more{margin-top:9px;display:inline-flex;align-items:center;gap:7px;height:auto;padding:6px 11px;border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 7%,transparent);color:var(--accent);font-size:.65rem;font-weight:800;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.catalog-more:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 9px 22px color-mix(in srgb,var(--accent) 10%,transparent)}
.catalog-more[hidden]{display:none!important}
.catalog-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;margin-top:7px;padding:0 20px 13px}
.catalog-doc{padding:0 9px}
.catalog-card-actions{margin-top:auto;padding:1px 20px 21px}

/* Theme selectors keep a 13px visual dot but a touch-friendly target. */
.theme-dots{gap:0}
.theme-dot{width:29px;height:29px;border:0;background:transparent;box-shadow:none!important;display:grid;place-items:center;padding:0;transform:none!important}
.theme-dot::before{content:"";width:12px;height:12px;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:var(--dot);box-shadow:0 0 0 2px transparent;transition:transform .18s ease,box-shadow .18s ease}
.theme-dot:hover::before{transform:scale(1.12)}
.theme-dot.is-active::before{box-shadow:0 0 0 2px #0d0e16,0 0 0 3px rgba(255,255,255,.9);transform:scale(1.04)}

/* Gift module: visual motion without floating product packs. */
.gift-atmosphere{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.gift-pack{display:none!important}
.gift-atmosphere::before,.gift-atmosphere::after{content:"";position:absolute;border-radius:50%;filter:blur(20px);opacity:.88;animation:giftGlowDrift 9s ease-in-out infinite alternate}
.gift-atmosphere::before{width:min(48vw,560px);height:min(48vw,560px);right:8%;top:13%;background:radial-gradient(circle,rgba(56,174,255,.27) 0%,rgba(56,174,255,.12) 30%,rgba(56,174,255,.035) 48%,transparent 72%);box-shadow:0 0 120px rgba(48,155,240,.14)}
.gift-atmosphere::after{width:min(28vw,330px);height:min(28vw,330px);left:7%;bottom:11%;background:radial-gradient(circle,rgba(32,117,218,.16) 0%,rgba(32,117,218,.06) 36%,transparent 72%);animation-delay:-4s}
.gift-story-stage::before{content:"";position:absolute;z-index:1;inset:14% 7%;border-radius:50%;background:radial-gradient(circle,rgba(33,155,237,.16),rgba(33,155,237,.055) 35%,transparent 68%);filter:blur(26px);pointer-events:none}
.gift-story-card,.gift-story-nav{z-index:2}
@keyframes giftGlowDrift{from{transform:translate3d(-8px,-10px,0) scale(.96)}to{transform:translate3d(10px,12px,0) scale(1.04)}}

/* Cleaner vertical rhythm. */
.product-heading{margin-bottom:42px}
.catalog-toolbar{margin-bottom:28px}
.catalog-progress{margin-top:18px}
.gift-copy>p:not(.eyebrow){max-width:590px}

/* Product modal mobile/desktop resilience. */
.product-modal-panel{overflow:hidden}
.product-modal-copy{min-width:0}

/* ---------- Tablet ---------- */
@media(max-width:1100px){
  .catalog-shell{padding-left:54px;padding-right:54px}
  .catalog-shell::before,.catalog-shell::after{width:58px}
  .gift-showcase{padding-top:108px;padding-bottom:108px}
}

/* ---------- Mobile / compact tablets ---------- */
@media(max-width:900px){
  :root{--shell:min(100% - 34px,760px)}
  .site-header{height:66px;padding:0 16px;gap:12px;background:linear-gradient(180deg,rgba(2,12,29,.82),rgba(2,12,29,.28))}
  .site-header.is-scrolled{height:60px}
  .site-header .brand img{width:116px}
  .header-nav{display:none}
  .header-gift{margin-left:auto;min-height:38px;padding:0 15px;font-size:.67rem}

  .hero{min-height:100svh}
  .hero-content{padding-top:88px;padding-bottom:max(42px,env(safe-area-inset-bottom))}
  .hero h1 span{font-size:clamp(3.4rem,17vw,5.3rem)}
  .hero h1 strong{font-size:clamp(2rem,10.2vw,3.15rem);margin-top:9px}
  .hero-lead{font-size:.98rem;line-height:1.52;margin-top:23px!important;max-width:95%!important}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:24px}
  .hero-actions .btn{width:100%}
  .hero-slide img{object-position:center 40%}

  .why{min-height:auto;padding:88px 0 94px}
  .glass-panel{width:100%;padding:30px 24px;border-radius:22px;background:rgba(5,20,42,.86)}
  .why-copy h2{font-size:clamp(2.85rem,13vw,4.25rem)}
  .why-copy p{font-size:.91rem}
  .why-copy p.intro{font-size:1rem}
  .why-q{opacity:.55}
  .q3,.q5,.gift3{display:none}

  .experiences{padding:92px 0 98px}
  .experience-grid{grid-template-columns:1fr;gap:22px}
  .experience-copy h2{font-size:clamp(2.55rem,12vw,4rem)}
  .experience-copy p:not(.eyebrow){font-size:.94rem}
  .ebook{height:430px;margin-top:8px}
  .ebook-page{width:min(300px,76%)}

  .products{padding:92px 0 96px}
  .product-heading{margin-bottom:32px;padding-bottom:0}
  .product-heading h2{font-size:clamp(2.55rem,12vw,4rem)}
  .product-heading>p:last-child{font-size:.95rem}
  .catalog-toolbar{width:calc(100% - 30px);min-height:50px;margin-bottom:24px;padding:7px 10px;justify-content:space-between}
  .catalog-toolbar>span{display:none}
  .catalog-toolbar button{padding:8px 13px;min-height:36px}
  .catalog-shell{padding-left:32px;padding-right:32px}
  .catalog-shell::before,.catalog-shell::after{width:34px;bottom:30px}
  .catalog-track{padding:6px 22px 15px;gap:16px}
  .catalog-cell{flex-basis:min(360px,82vw);width:min(360px,82vw)}
  .catalog-theme{height:43px;margin-bottom:5px}
  .theme-dot{width:34px;height:34px}
  .theme-dot::before{width:12px;height:12px}
  .catalog-desc{height:150px}
  .catalog-desc.is-expanded{height:280px;max-height:280px}
  .catalog-rail-nav{width:40px;height:40px}
  .catalog-rail-nav.prev{left:1px}.catalog-rail-nav.next{right:1px}
  .catalog-progress{width:min(360px,72vw)}

  .gift-showcase{min-height:auto;padding:96px 0 96px}
  .gift-showcase-grid{grid-template-columns:1fr;gap:42px}
  .gift-copy{text-align:center;margin:auto}
  .gift-copy h2{font-size:clamp(2.75rem,14vw,4.5rem)}
  .gift-copy>p:not(.eyebrow){margin-left:auto;margin-right:auto;font-size:.94rem}
  .gift-story-stage{min-height:535px}
  .gift-story-card{width:min(300px,77vw)}
  .gift-story-nav.prev{left:2px}.gift-story-nav.next{right:2px}
  .gift-atmosphere::before{right:50%;top:8%;width:min(76vw,470px);height:min(76vw,470px);transform:translateX(50%)}
  .gift-atmosphere::after{left:50%;bottom:4%;width:min(48vw,260px);height:min(48vw,260px);transform:translateX(-65%)}

  .product-modal-panel{grid-template-columns:1fr;top:auto;bottom:0;left:0;width:100%;max-height:94svh;overflow-y:auto;border-radius:24px 24px 0 0;transform:translateY(102%);opacity:1;overscroll-behavior:contain}
  .product-modal.is-open .product-modal-panel{transform:none}
  .product-modal-media{min-height:300px;padding:32px 22px;border-radius:24px 24px 0 0}
  .product-modal-images{height:250px}
  .product-modal-images img{max-height:245px}
  .product-modal-copy{padding:30px 22px calc(34px + env(safe-area-inset-bottom))}
  .product-modal-copy h2{font-size:clamp(2.8rem,14vw,3.7rem)}
  .product-modal-link{width:100%}

  .footer-grid{grid-template-columns:1fr;gap:34px}
  .site-footer{padding-top:52px}
  .footer-bottom{align-items:flex-start;gap:10px;flex-direction:column}
}

@media(max-width:700px){
  :root{--shell:calc(100% - 28px)}
  .social-rail{display:none}
  .hero-content{align-self:flex-end}
  .catalog-shell{padding-left:15px;padding-right:15px}
  .catalog-shell::before,.catalog-shell::after{width:22px}
  .catalog-track{padding-left:27px;padding-right:27px}
  .catalog-cell{flex-basis:min(354px,84vw);width:min(354px,84vw)}
  .catalog-rail-nav{display:none}
  .catalog-progress{margin-top:16px;height:7px}
  .catalog-progress button{min-width:18%}
  .catalog-media-nav{width:36px;height:36px;opacity:.88}
  .catalog-doc{height:48px}
  .catalog-card-actions>*{min-height:42px}
  .gift-story-nav{width:40px;height:40px}
  .gift-story-stage{min-height:510px}
  .media-viewer-panel{inset:0;border:0;border-radius:0}
  .media-viewer-close{right:10px;top:max(10px,env(safe-area-inset-top))}
  .modal-shell{padding-bottom:calc(48px + env(safe-area-inset-bottom))}
  .cookie-panel{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));gap:11px;padding:14px 15px;border-radius:16px}
  .cookie-panel h2{font-size:.91rem;margin-bottom:3px}
  .cookie-panel p{font-size:.72rem;line-height:1.45}
  .cookie-actions{grid-template-columns:1fr 1fr;gap:7px}
  .cookie-actions button{min-height:38px;padding:8px 8px;font-size:.65rem}
  .cookie-actions button.primary{grid-column:1/-1;min-height:40px}
}

@media(max-width:420px){
  .site-header .brand img{width:108px}
  .header-gift{padding:0 12px;font-size:.63rem}
  .hero h1 span{font-size:clamp(3.15rem,18vw,4.45rem)}
  .hero h1 strong{font-size:clamp(1.9rem,11vw,2.75rem)}
  .glass-panel{padding:27px 20px}
  .catalog-cell{flex-basis:86vw;width:86vw}
  .catalog-card-head{padding-left:17px;padding-right:17px}
  .catalog-media{margin-left:16px;margin-right:16px}
  .catalog-copy,.catalog-docs,.catalog-card-actions{padding-left:16px;padding-right:16px}
  .gift-story-card{width:min(292px,80vw)}
  .gift-copy .btn{width:100%}
}

@media(hover:none),(pointer:coarse){
  .catalog-card:hover,.gift-story-card:hover,.header-gift:hover{transform:none}
  .catalog-spot{display:none}
}
@media(prefers-reduced-motion:reduce){
  .gift-atmosphere::before,.gift-atmosphere::after{animation:none!important}
}


/* Modal/viewer stacking always stays above the fixed header on mobile browsers. */
.student-drawer{z-index:1050}
.product-modal{z-index:1100}
.media-viewer{z-index:1150}
.story-viewer{z-index:1200}

/* E-book frame already provides its own close button; do not duplicate it. */
.media-viewer.is-frame .media-viewer-close{display:none!important}
