/* ==========================================================================
   Otofon.al Pro — v5.0 Refinement Layer
   Ky skedar ngarkohet PAS style.css dhe rafinon tipografinë, kontrastin,
   aksesueshmërinë, lëvizjet dhe detajet vizuale të gjithë faqes.
   ========================================================================== */

:root{
  /* Tipografi me shkallë të njësuar (readable-first) */
  --fs-xs:13px;
  --fs-sm:14px;
  --fs-base:16px;
  --fs-md:17px;
  --fs-lg:19px;

  /* Kontrast i përmirësuar */
  --muted:#556a80;
  --line:#dbe7f1;
  --ring:#ff7622;
  --brand-deep:#054f7c;

  /* Ritëm vertikal */
  --sp-section:clamp(60px,7vw,96px);
  --shadow-xs:0 4px 14px rgba(6,44,76,.06);
  --shadow-md:0 16px 40px rgba(6,44,76,.10);
  --shadow-lg:0 30px 70px rgba(6,44,76,.16);
}

/* --------------------------------------------------------------------------
   1. Bazë tipografike & lexueshmëri
   -------------------------------------------------------------------------- */
body{font-size:var(--fs-base);line-height:1.7;text-rendering:optimizeLegibility}
p{text-wrap:pretty}
h1,h2,h3,h4{text-wrap:balance}
::selection{background:rgba(255,118,34,.22);color:var(--ink)}

.section{padding:var(--sp-section) 0}
.section-intro{font-size:var(--fs-md);line-height:1.75}

/* Dysheme lexueshmërie: asnjë tekst informues nën 13px */
.feature-card p,.service-body p,.product-body p,.center-card p,
.testimonial-card blockquote,.article-body p,.model-body p,
.values-grid p,.advice-grid p,.service-detail-card p,.hours-grid span,
.faq-answer p,.service-columns p,.process-steps p,
.hearing-steps p,.hearing-sign-grid p,.hearing-loss-grid p,
.hearing-audio-facts p,.tymp-type-grid p,.hearing-compare-row p,
.hearing-next-card p,.hearing-when li,.hearing-alert p,
.hearing-grade-list strong,.hearing-grade-list em{
  font-size:var(--fs-sm);
  line-height:1.72;
}
.checks,.model-tags span,.service-jump-card em{font-size:var(--fs-xs)}
.hearing-steps h3,.hearing-audio-facts h3,.tymp-type-grid h3,
.service-columns h4,.faq-item summary,.service-jump-card strong{font-size:15px}
.hearing-sign-grid h3,.hearing-loss-grid h3{font-size:18px}
.hearing-compare-row span{font-size:13px}
.hearing-source-note .container{font-size:11.5px;line-height:1.75}
.center-card-pro .center-address p,.center-phone,
.contact-quick-grid strong,.contact-detail-list a,
.contact-detail-list strong,.media-badge strong{font-size:15px}
.contact-quick-grid small,.contact-detail-list small,
.media-badge small,.hero-stat span{font-size:12px}

/* Përmbajtje editoriale */
.prose{font-size:var(--fs-md)}
.prose p,.prose li{color:#42586e;line-height:1.85}
.prose h2{font-size:clamp(26px,3vw,34px);margin-top:1.8em}
.prose h3{font-size:clamp(20px,2.4vw,25px);margin-top:1.5em}
.prose a{color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}
.prose img{border-radius:20px;box-shadow:var(--shadow-xs)}
.prose blockquote{margin:28px 0;padding:20px 24px;border-left:4px solid var(--blue);background:#f5fbff;border-radius:0 16px 16px 0;font-size:var(--fs-md)}

/* --------------------------------------------------------------------------
   2. Aksesueshmëri: fokus i dukshëm, skip-link, tap targets
   -------------------------------------------------------------------------- */
a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,summary:focus-visible,
[tabindex]:focus-visible{
  outline:3px solid var(--ring);
  outline-offset:3px;
  border-radius:12px;
}
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:999;
  background:var(--navy);color:#fff;padding:12px 20px;
  border-radius:0 0 14px 0;font-weight:800;font-size:14px;
}
.skip-link:focus{left:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.mini-btn,.lang-link,.menu-toggle{min-height:44px}
.lang-link{display:inline-grid;place-items:center;min-width:40px}

/* --------------------------------------------------------------------------
   3. Header — sticky inteligjent, CTA dhe menu mobile
   -------------------------------------------------------------------------- */
.site-header{transition:box-shadow .25s ease,background .25s ease,padding .25s ease}
.site-header.is-scrolled{box-shadow:0 10px 34px rgba(5,45,78,.12);background:rgba(255,255,255,.98)}
.site-header.is-scrolled .header-inner{min-height:66px}
.header-inner{transition:min-height .25s ease}
.main-nav a{transition:color .18s ease}

.header-cta{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 16px;border-radius:14px;
  background:linear-gradient(135deg,#ff6f18,#ff8f4a);
  color:#fff;font-weight:800;font-size:13px;white-space:nowrap;
  box-shadow:0 10px 24px rgba(255,118,34,.26);
  transition:transform .18s ease,box-shadow .18s ease;
}
.nav-drawer-foot{display:none}@media(max-width:1399px){.header-cta{display:none}}

/* Drawer mobile */
@media(max-width:1050px){
  .main-nav{
    display:block;position:fixed;inset:0 0 0 auto;top:0;
    width:min(340px,86vw);height:100dvh;padding:86px 22px 28px;
    background:#fff;border-left:1px solid var(--line);
    box-shadow:-24px 0 60px rgba(5,45,78,.18);
    transform:translateX(102%);transition:transform .28s cubic-bezier(.4,0,.2,1);
    overflow-y:auto;z-index:120;
  }
  .main-nav.open{transform:translateX(0)}
  .main-nav ul{gap:2px;padding:0}
  .main-nav a{
    display:flex;align-items:center;justify-content:space-between;
    padding:15px 14px;border-radius:14px;font-size:15px;color:var(--navy);
  }
  .main-nav a:hover,.main-nav .current-menu-item>a{background:#f1f8fd}
  .site-header{z-index:140}
  .menu-toggle{display:grid;place-items:center;margin-left:auto;z-index:150;position:relative}
  .nav-backdrop{
    position:fixed;inset:0;background:rgba(4,30,54,.5);
    backdrop-filter:blur(3px);opacity:0;pointer-events:none;
    transition:opacity .25s ease;z-index:110;
  }
  body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}
  body.nav-open{overflow:hidden}
  .main-nav .nav-drawer-foot{
    display:grid;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);
    display:grid;gap:10px;
  }
  .main-nav .nav-drawer-foot a{
    justify-content:center;background:linear-gradient(135deg,#ff6f18,#ff8f4a);
    color:#fff;font-weight:800;
  }
  .main-nav .nav-drawer-foot a.nav-call{
    background:#f2f8fd;color:var(--navy);border:1px solid var(--line);
  }
}

/* --------------------------------------------------------------------------
   4. Hero
   -------------------------------------------------------------------------- */
.hero-content{padding-block:clamp(84px,11vw,120px)}
.hero h1{letter-spacing:-.045em;line-height:1.02}
.hero p{font-size:clamp(17px,1.5vw,19px);line-height:1.72;color:#e9f3fb}
.hero-badge{backdrop-filter:blur(10px)}
.hero-stat{transition:transform .2s ease,background .2s ease}
.hero-stat span{color:#c9dcec}
.hero-scroll-cue{
  position:absolute;left:50%;bottom:22px;transform:translateX(-50%);
  z-index:2;display:grid;place-items:center;gap:6px;
  color:rgba(255,255,255,.75);font-size:10px;font-weight:800;
  letter-spacing:.18em;text-transform:uppercase;
}
.hero-scroll-cue i{animation:degjimi-bounce 1.9s infinite}
@keyframes degjimi-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@media(max-width:760px){.hero-scroll-cue{display:none}}

/* --------------------------------------------------------------------------
   5. Butona — gjendje të plota (hover / active / disabled)
   -------------------------------------------------------------------------- */
.btn{min-height:50px;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.btn:active{transform:translateY(0) scale(.985)}
.btn[disabled],.btn.is-loading{opacity:.7;pointer-events:none}
.btn.is-loading:before{
  content:"";width:15px;height:15px;border-radius:50%;
  border:2px solid rgba(255,255,255,.45);border-top-color:#fff;
  animation:degjimi-spin .7s linear infinite;
}
@keyframes degjimi-spin{to{transform:rotate(360deg)}}

/* --------------------------------------------------------------------------
   6. Karta & sipërfaqe — hover i njësuar
   -------------------------------------------------------------------------- */
.feature-card,.service-card,.product-card,.center-card,.testimonial-card,
.article-card,.model-card,.values-grid article,.advice-grid article,
.service-detail-card,.hearing-sign-grid article,.tymp-type-grid article{
  transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s ease,border-color .25s ease;
}
.testimonial-card{display:flex;flex-direction:column}
.testimonial-card blockquote{flex:1}
.article-card{display:flex;flex-direction:column}
.article-card .article-body{display:flex;flex-direction:column;flex:1}
.article-card .read-more{margin-top:auto;padding-top:14px}
.read-more i{transition:transform .2s ease}

/* Imazhet: pa “kërcim” gjatë ngarkimit */
.service-media,.article-card img,.model-media,.product-media,
.story-photo img,.inner-hero-media>img{background:linear-gradient(145deg,#eef6fb,#f8fcff)}

/* Partnerët */
.partner-bar{padding:30px 34px}
.partner-bar img{transition:transform .25s ease,filter .25s ease,opacity .25s ease}

/* --------------------------------------------------------------------------
   7. Formularë
   -------------------------------------------------------------------------- */
.form-field label{font-size:13.5px;letter-spacing:.01em}
.form-field input,.form-field textarea,.form-field select{
  min-height:52px;font-size:15px;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{
  outline:none;border-color:var(--blue);background:#fff;
  box-shadow:0 0 0 4px rgba(12,120,184,.14);
}
.form-field input:user-invalid,.form-field textarea:user-invalid{
  border-color:#e0776b;box-shadow:0 0 0 4px rgba(224,119,107,.12);
}
.form-hp{position:absolute!important;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.form-consent{grid-column:1/-1;font-size:12.5px;color:var(--muted);line-height:1.6}
.notice{font-size:14px;align-items:flex-start}
.notice.notice-error{background:#fdf1ef;color:#a33a2b;border-color:#f3cdc6}

/* --------------------------------------------------------------------------
   8. FAQ
   -------------------------------------------------------------------------- */
.faq-item{transition:border-color .2s ease,box-shadow .2s ease}
.faq-item[open]{box-shadow:var(--shadow-xs)}
.faq-answer p{font-size:var(--fs-sm);line-height:1.8}

/* --------------------------------------------------------------------------
   9. CTA & Footer
   -------------------------------------------------------------------------- */
.cta-box{padding:40px 44px}
.cta-box h2{font-size:clamp(26px,3vw,34px);line-height:1.15}
.cta-box p{font-size:var(--fs-sm)}
.site-footer{padding:72px 0 28px}
.site-footer p,.site-footer li,.site-footer a{font-size:14.5px;line-height:1.75}
.site-footer h4{font-size:15px;letter-spacing:.02em}
.site-footer a{transition:color .18s ease}
.footer-bottom{font-size:12.5px;align-items:center}

/* --------------------------------------------------------------------------
   10. Butoni "kthehu lart"
   -------------------------------------------------------------------------- */
.back-to-top{
  position:fixed;left:22px;bottom:24px;z-index:94;
  width:48px;height:48px;border:1px solid var(--line);border-radius:16px;
  background:rgba(255,255,255,.96);color:var(--navy);
  display:grid;place-items:center;cursor:pointer;font-size:16px;
  box-shadow:var(--shadow-md);backdrop-filter:blur(10px);
  opacity:0;pointer-events:none;transform:translateY(12px);
  transition:opacity .25s ease,transform .25s ease,background .2s ease;
}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}@media(max-width:600px){.back-to-top{left:15px;bottom:16px;width:44px;height:44px}}

/* --------------------------------------------------------------------------
   11. Animacione zbulimi (reveal) — vetëm nëse lejohen lëvizjet
   -------------------------------------------------------------------------- */
.js-reveal{opacity:0;transform:translateY(22px)}
.js-reveal.is-visible{
  opacity:1;transform:none;
  transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);
}

/* --------------------------------------------------------------------------
   12. Rregullime mobile
   -------------------------------------------------------------------------- */
@media(max-width:760px){
  .hero h1{font-size:clamp(36px,10vw,46px)}
  .hero-actions .btn{width:100%}
  .cta-box{padding:28px 24px}
  .cta-box .btn{width:100%}
  .section-title{font-size:clamp(26px,7.4vw,34px)}
  .prose{font-size:16px}
  .contact-float{bottom:78px}
  .partner-bar{padding:22px}
}

/* --------------------------------------------------------------------------
   13. Lëvizje të reduktuara & printim
   -------------------------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .js-reveal{opacity:1!important;transform:none!important}
  .hero-scroll-cue i,.btn.is-loading:before{animation:none}
}@media print{
  .site-header,.contact-float,.back-to-top,.cta,.hero-video,
  .menu-toggle,.language-switcher,.hero-scroll-cue{display:none!important}
  body{background:#fff;color:#000;font-size:12pt}
  .section{padding:14pt 0}
  a[href^="http"]:after{content:" (" attr(href) ")";font-size:9pt;color:#555}
  .site-footer{background:#fff;color:#000;border-top:1px solid #ccc}
  .site-footer p,.site-footer li,.site-footer a{color:#000}}

/* === Hover effects scoped to hover-capable pointers (fixes iOS/Android double-tap-to-click on buttons/cards) === */
@media (hover:hover) and (pointer:fine){

.prose a:hover{color:var(--orange)}

.header-cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,118,34,.34)}

.hero-stat:hover{transform:translateY(-3px);background:rgba(255,255,255,.16)}

.btn-secondary:hover{background:#fff;border-color:#bcd8ea}

.btn-dark:hover{background:var(--navy-2)}

.article-card:hover,.model-card:hover,.values-grid article:hover,
.advice-grid article:hover,.hearing-sign-grid article:hover,
.tymp-type-grid article:hover{
  transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:#c6dfef;
}

.read-more:hover i{transform:translateX(4px)}

.partner-bar img:hover{transform:scale(1.06)}

.form-field input:hover,.form-field textarea:hover,.form-field select:hover{border-color:#b7d4e8}

.faq-item:hover{border-color:#bfdff2}

.faq-item summary:hover i{background:#e3f3ff}

.site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}

.footer-credit a:hover{color:#fff}

.back-to-top:hover{background:#fff;color:var(--blue)}
}
