/* ==========================================================================
   Ékszerbe Foglalt Idő — téma stíluslap
   A Claude Design mockup („Ékszerbe Foglalt Idő - Landing.dc.html”) 1:1 átirata.
   A mockup inline stílusai és a design system React-komponensei osztályokká
   vannak kiemelve; a számértékek változatlanok.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Alap
   -------------------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--surface-page);
  color:var(--text-body);
  font-family:var(--font-sans);
  font-weight:300;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

a{color:inherit;text-decoration:none;transition:opacity var(--dur-fast) var(--ease-standard)}
a:hover{opacity:.62}
img{display:block;max-width:100%;height:auto}
button{font:inherit}

.efi-site{background:var(--surface-canvas);color:var(--text-body);font-family:var(--font-sans);font-weight:300;overflow-x:hidden}

.efi-wrap{max-width:var(--max-page);width:100%;margin:0 auto;padding:0 var(--gutter)}

.efi-section{padding:clamp(64px,9vw,140px) var(--gutter)}
.efi-section--canvas{background:var(--surface-canvas)}
.efi-section--taupe-soft{background:var(--surface-taupe-soft)}
.efi-section__inner{max-width:var(--max-page);margin:0 auto}

.efi-skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 20px;background:var(--surface-ink);color:var(--text-on-ink);font-size:var(--text-sm);letter-spacing:var(--tracking-ui);text-transform:uppercase}
.efi-skip-link:focus{left:0}

:focus-visible{outline:2px solid var(--gold-2);outline-offset:2px}

/* --------------------------------------------------------------------------
   2. Design system komponensek
   -------------------------------------------------------------------------- */

/* Eyebrow ---------------------------------------------------------------- */
.ds-eyebrow{
  display:inline-flex;align-items:center;gap:var(--space-3);
  font-family:var(--font-serif);font-size:var(--text-eyebrow);
  letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;
  color:var(--text-muted);
}
.ds-eyebrow--light{color:var(--text-on-taupe-muted)}
.ds-eyebrow__sparkle{color:var(--gold-2)}

/* Button ----------------------------------------------------------------- */
.ds-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);
  font-family:var(--font-sans);font-weight:var(--weight-ui);
  text-transform:uppercase;letter-spacing:var(--tracking-caps);
  line-height:var(--leading-ui);
  border-radius:var(--radius-pill);border:1px solid transparent;
  cursor:pointer;width:auto;text-align:center;
  transition:background var(--dur-base) var(--ease-standard),
             color var(--dur-base) var(--ease-standard),
             transform var(--dur-fast) var(--ease-standard),
             box-shadow var(--dur-base) var(--ease-standard);
}
.ds-btn:hover{opacity:1;transform:var(--hover-lift)}
.ds-btn:active{transform:scale(var(--press-scale))}
.ds-btn[disabled],.ds-btn.is-disabled{opacity:.35;cursor:default;transform:none;box-shadow:none}

.ds-btn--sm{padding:9px 20px;font-size:var(--text-xs)}
.ds-btn--md{padding:13px 28px;font-size:var(--text-sm)}
.ds-btn--lg{padding:17px 38px;font-size:var(--text-base)}
.ds-btn--full{width:100%}

.ds-btn--primary{background:var(--surface-ink);color:var(--text-on-ink)}
.ds-btn--primary:hover{background:var(--stone-8);box-shadow:var(--shadow-pill)}

.ds-btn--outline{background:transparent;color:var(--text-body);border-color:var(--line-strong)}
.ds-btn--outline:hover{background:var(--surface-ink);color:var(--text-on-ink)}

.ds-btn--light{background:var(--surface-canvas);color:var(--text-body)}
.ds-btn--light:hover{background:var(--stone-1)}

.ds-btn--ghost{background:transparent;color:var(--text-body);border-color:transparent}
.ds-btn--ghost:hover{border-color:var(--line-hairline)}

.ds-btn--onTaupe{background:transparent;color:var(--text-on-taupe);border-color:var(--line-hairline-light)}
.ds-btn--onTaupe:hover{background:var(--stone-0);color:var(--text-body)}

.ds-btn__arrow{transition:transform var(--dur-base) var(--ease-standard)}
.ds-btn:hover .ds-btn__arrow{transform:translateX(3px)}

a:has(> .ds-btn):hover{opacity:1}

/* Rule ------------------------------------------------------------------- */
.ds-rule{width:100%;height:1px;background:var(--line-hairline)}
.ds-rule--light{background:var(--line-hairline-light)}
.ds-rule--deco{display:flex;align-items:center;gap:var(--space-4);height:auto;background:none;width:auto}
.ds-rule__line{flex:1;height:1px;background:var(--line-hairline)}
.ds-rule--light .ds-rule__line{background:var(--line-hairline-light)}
.ds-rule__sparkle{font-family:var(--font-display);color:var(--gold-2);font-size:13px;line-height:1}
.ds-rule--light .ds-rule__sparkle{color:var(--stone-0)}
.ds-rule__label{font-family:var(--font-serif);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--text-muted)}
.ds-rule--light .ds-rule__label{color:var(--text-on-taupe-muted)}

/* ArchImage -------------------------------------------------------------- */
.ds-archimg{margin:0;position:relative;overflow:hidden;background:var(--stone-3)}
.ds-archimg--arch{border-radius:var(--radius-arch)}
.ds-archimg--square{border-radius:var(--radius-0)}
.ds-archimg--pill{border-radius:var(--radius-pill)}
.ds-archimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-slow) var(--ease-out-soft)}
.ds-archimg:hover img{transform:scale(var(--image-zoom))}
.ds-archimg__scrim{position:absolute;inset:0;background:var(--scrim-bottom)}
.ds-archimg figcaption{position:absolute;left:var(--space-5);bottom:var(--space-5);font-family:var(--font-serif);font-size:var(--text-label);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-on-taupe)}

/* Input / Select / Checkbox ---------------------------------------------- */
.ds-field{display:block}
.ds-field__label{
  display:block;font-family:var(--font-serif);font-size:var(--text-eyebrow);
  letter-spacing:var(--tracking-caps);text-transform:uppercase;
  color:var(--text-muted);margin-bottom:var(--space-2);
}
.ds-field--light .ds-field__label{color:var(--text-on-taupe-muted)}

.ds-input,
.ds-select{
  width:100%;padding:10px 0;background:transparent;border:0;
  border-bottom:1px solid var(--line-hairline);border-radius:0;outline:none;
  font-family:var(--font-sans);font-weight:var(--weight-body);
  font-size:var(--text-base);color:var(--text-body);
  transition:border-color var(--dur-base) var(--ease-standard);
}
.ds-input:focus{border-bottom-color:var(--line-strong)}
.ds-field--light .ds-input,
.ds-field--light .ds-select{border-bottom-color:var(--line-hairline-light);color:var(--text-on-taupe)}
.ds-field--light .ds-input:focus{border-bottom-color:var(--stone-0)}
.ds-field--invalid .ds-input{border-bottom-color:var(--gold-3)}
.ds-input::placeholder{color:var(--stone-6);opacity:1}

.ds-field__hint{
  display:block;margin-top:var(--space-2);font-family:var(--font-sans);
  font-size:var(--text-xs);letter-spacing:.04em;color:var(--text-muted);
}
.ds-field--invalid .ds-field__hint{color:var(--gold-3)}

.ds-select-wrap{position:relative;display:block}
.ds-select{padding:10px 24px 10px 0;appearance:none;-webkit-appearance:none;cursor:pointer}
.ds-select-wrap .ds-icon{position:absolute;right:0;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-body)}
.ds-field--light .ds-select-wrap .ds-icon{color:var(--text-on-taupe)}

.ds-checkbox{
  display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;
  font-family:var(--font-sans);font-weight:var(--weight-body);
  font-size:var(--text-sm);color:var(--text-body);
}
.ds-checkbox input{position:absolute;opacity:0;width:0;height:0}
.ds-checkbox__box{
  width:16px;height:16px;flex:none;display:grid;place-items:center;
  border:1px solid var(--line-strong);background:transparent;
  transition:background var(--dur-fast) var(--ease-standard);
}
.ds-checkbox__box .ds-icon{opacity:0;color:var(--stone-0)}
.ds-checkbox input:checked + .ds-checkbox__box{background:var(--surface-ink)}
.ds-checkbox input:checked + .ds-checkbox__box .ds-icon{opacity:1}
.ds-checkbox--light{color:var(--text-on-taupe)}
.ds-checkbox--light .ds-checkbox__box{border-color:var(--line-hairline-light)}
.ds-checkbox--light input:checked + .ds-checkbox__box{background:var(--stone-0)}
.ds-checkbox--light .ds-checkbox__box .ds-icon{color:var(--stone-9)}

.ds-icon{display:inline-block;flex:none;vertical-align:middle}
.ds-icon svg{display:block;width:100%;height:100%}

/* --------------------------------------------------------------------------
   3. Fejléc
   -------------------------------------------------------------------------- */
.efi-header{
  position:sticky;top:0;z-index:20;
  background:rgba(252,253,245,.82);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-hairline);
}
body.admin-bar .efi-header{top:32px}

.efi-header__inner{
  max-width:var(--max-page);margin:0 auto;
  padding:16px var(--gutter);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.efi-brand{font-family:var(--font-display);font-weight:500;font-size:15px;letter-spacing:.18em;text-transform:uppercase}
.efi-brand img{max-height:38px;width:auto}

.efi-nav{display:flex;gap:clamp(18px,3vw,40px);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.efi-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:clamp(18px,3vw,40px)}
.efi-nav li{position:relative}
.efi-nav a{display:inline-block}
.efi-nav .current-menu-item > a{opacity:.62}

/* Kosárjelző (WooCommerce) — a fejléc jobb szélén, a design tipográfiájával */
.efi-header__cart{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
}
.efi-header__cart-count{
  min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;
  border-radius:var(--radius-pill);background:var(--surface-ink);color:var(--text-on-ink);
  font-family:var(--font-sans);font-size:10px;letter-spacing:.04em;line-height:1;
}

/* Mobil menü — a mockupban nincs mobil nézet; a desktop megjelenés változatlan */
.efi-nav-toggle{
  display:none;align-items:center;justify-content:center;gap:6px;
  width:40px;height:40px;margin-right:-8px;padding:0;
  background:transparent;border:0;cursor:pointer;color:var(--text-body);
}
.efi-nav-toggle span{display:block;width:20px;height:1px;background:currentColor;transition:transform var(--dur-base) var(--ease-standard),opacity var(--dur-fast)}
.efi-nav-toggle span + span{margin-top:5px}
.efi-nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.efi-nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.efi-nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* --------------------------------------------------------------------------
   4. Hero
   -------------------------------------------------------------------------- */
.efi-hero{position:relative;background:var(--surface-taupe)}
.efi-hero__img{width:100%;height:clamp(420px,72vh,720px);object-fit:cover}
.efi-hero__scrim{position:absolute;inset:0;background:linear-gradient(to right,rgba(9,5,2,.42) 0%,rgba(9,5,2,.12) 52%,rgba(9,5,2,0) 100%)}
.efi-hero__body{position:absolute;inset:0;display:flex;align-items:center}
.efi-hero__title{
  margin:18px 0 0;max-width:14ch;
  font-family:var(--font-display);font-weight:500;
  font-size:clamp(40px,6.4vw,96px);line-height:.94;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-light);text-wrap:balance;
}
.efi-hero__lede{
  margin:26px 0 0;max-width:34ch;font-size:15px;line-height:1.65;
  color:var(--text-on-taupe);text-wrap:pretty;
}
.efi-hero__cta{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap}

/* --------------------------------------------------------------------------
   5. „A történet”
   -------------------------------------------------------------------------- */
.efi-story{
  max-width:var(--max-page);margin:0 auto;display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(32px,6vw,96px);align-items:start;
}
.efi-story__title{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(34px,4.6vw,72px);line-height:1.02;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-taupe);text-wrap:balance;
}
.efi-story__body{max-width:38ch;padding-top:10px}
.efi-story__body p{margin:0 0 20px;font-size:15px;line-height:1.65;text-wrap:pretty}
.efi-story__body p + p{margin-bottom:28px}

/* --------------------------------------------------------------------------
   6. „Több mint ékszer”
   -------------------------------------------------------------------------- */
.efi-split{
  max-width:var(--max-page);margin:0 auto;display:grid;
  gap:clamp(32px,6vw,88px);align-items:center;
}
.efi-split--image-left{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.efi-split--image-right{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.efi-split__text{max-width:40ch}
.efi-split__text p{margin:0 0 18px;font-size:15px;line-height:1.65;text-wrap:pretty}
.efi-split__text p:last-child{margin-bottom:0}

.efi-stack-heading{
  margin:22px 0 30px;font-family:var(--font-display);font-weight:500;
  letter-spacing:.02em;text-transform:uppercase;text-wrap:balance;
}
.efi-stack-heading span{display:block}
.efi-stack-heading__kicker{
  font-family:var(--font-serif);font-weight:400;
  font-size:clamp(15px,1.4vw,20px);letter-spacing:.3em;line-height:1.4;
  color:var(--text-muted);
}
.efi-stack-heading__mid{margin-top:.18em;font-size:clamp(22px,2.4vw,34px);line-height:1.1;color:var(--text-muted)}
.efi-stack-heading__lead{margin-top:.14em;font-size:clamp(36px,4.6vw,72px);line-height:1;color:var(--text-body)}

/* --------------------------------------------------------------------------
   7. „A csomag”
   -------------------------------------------------------------------------- */
.efi-csomag__head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(32px,6vw,96px);align-items:end;margin-bottom:clamp(36px,5vw,72px);
}
.efi-csomag__title{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(34px,4.6vw,72px);line-height:1.02;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-taupe);
}
.efi-csomag__lede{margin:0;max-width:38ch;font-size:15px;line-height:1.65;text-wrap:pretty}
.efi-csomag__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.efi-csomag__item{display:flex;flex-direction:column;gap:16px}
.efi-csomag__item-name{margin:0;font-family:var(--font-serif);font-size:15px;letter-spacing:.18em;text-transform:uppercase}
.efi-csomag__item-desc{margin:0;font-size:13px;line-height:1.6;color:var(--text-muted)}

/* --------------------------------------------------------------------------
   8. Árak (parallax)
   -------------------------------------------------------------------------- */
.efi-parallax{
  position:relative;
  background-size:cover;background-position:center;
  background-attachment:fixed;background-repeat:no-repeat;
}
.efi-parallax__scrim{position:absolute;inset:0}
.efi-parallax__inner{position:relative}

.efi-arak{padding:clamp(72px,10vw,150px) var(--gutter)}
.efi-arak .efi-parallax__scrim{background:rgba(9,5,2,.52)}
.efi-arak__inner{max-width:var(--max-page);margin:0 auto}
.efi-arak__head{margin-bottom:clamp(32px,4vw,56px);max-width:46ch}
.efi-arak__title{
  margin:18px 0 0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-light);
}
.efi-arak__grid{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(20px,3vw,40px);align-items:stretch;
}
.efi-price-card{
  background:var(--surface-canvas);padding:clamp(28px,3vw,44px);
  display:flex;flex-direction:column;gap:22px;
}
.efi-price-card--glass{
  background:rgba(252,253,245,.1);border:1px solid var(--line-hairline-light);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  color:var(--text-on-ink);
}
.efi-price-card__title{
  margin:16px 0 0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(28px,3vw,44px);line-height:1.06;letter-spacing:.02em;text-transform:uppercase;
}
.efi-price-card--glass .efi-price-card__title{font-size:clamp(24px,2.4vw,34px)}
.efi-price-card__price{margin:0;font-family:var(--font-serif);font-size:20px;letter-spacing:.18em;text-transform:uppercase}
.efi-price-card__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;max-width:42ch}
.efi-price-card__list li{display:flex;gap:14px;font-size:15px;line-height:1.6}
.efi-price-card__bullet{color:var(--text-accent)}
.efi-price-card__note{margin:0;max-width:34ch;font-size:15px;line-height:1.65;text-wrap:pretty;color:var(--text-on-taupe)}
.efi-price-card__foot{margin-top:auto}

/* Webshop sáv (parallax) */
.efi-band{
  position:relative;min-height:clamp(240px,38vh,420px);
  display:grid;place-items:center;padding:clamp(48px,7vw,96px) var(--gutter);
}
.efi-band .efi-parallax__scrim{background:rgba(9,5,2,.38)}
.efi-band__inner{position:relative;text-align:center}
.efi-band__title{
  margin:18px 0 0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(28px,3.4vw,52px);line-height:1.08;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-light);
}

/* --------------------------------------------------------------------------
   9. „Anyának és apának”
   -------------------------------------------------------------------------- */
.efi-parents__title{
  margin:20px 0 28px;font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;
  text-transform:uppercase;text-wrap:balance;
}
.efi-parents__closing{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:20px;line-height:1.3;letter-spacing:.02em;
}

/* --------------------------------------------------------------------------
   10. Darabok (WooCommerce termékek)
   -------------------------------------------------------------------------- */
.efi-darabok__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:32px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,72px);
}
.efi-darabok__title{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(34px,4.6vw,72px);line-height:1.02;letter-spacing:.02em;
  text-transform:uppercase;color:var(--text-display-taupe);
}
.efi-darabok__note{margin:0;max-width:32ch;font-size:13px;line-height:1.6;color:var(--text-muted)}

.efi-group{margin-bottom:clamp(48px,6vw,96px)}
.efi-group__head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap}
.efi-group__title{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(24px,2.6vw,38px);line-height:1.1;letter-spacing:.02em;text-transform:uppercase;
}
.efi-group__note{margin:0;font-family:var(--font-serif);font-size:15px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}
.efi-group__sub{margin:12px 0 24px;font-size:14px;line-height:1.6;color:var(--text-muted)}
.efi-group__grid{margin-top:clamp(24px,3vw,44px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,36px)}

.efi-card{
  background:var(--surface-canvas);display:flex;flex-direction:column;
  border:1px solid var(--line-hairline);
  transition:border-color var(--dur-fast) var(--ease-standard);
}
.efi-card.is-selected{border-color:var(--line-strong)}
.efi-card__media{overflow:hidden;background:var(--stone-2);display:block}
.efi-card a:hover{opacity:1}
.efi-card__name a{display:inline}
.efi-card__img{
  width:100%;aspect-ratio:4/3;display:block;
  background-size:cover;background-position:center;
  transition:transform var(--dur-slow) var(--ease-standard);
}
.efi-card:hover .efi-card__img{transform:scale(1.04)}
.efi-card__body{padding:22px 20px 20px;display:flex;flex-direction:column;gap:14px;flex:1}
.efi-card__name{margin:0;font-family:var(--font-serif);font-size:15px;letter-spacing:.14em;text-transform:uppercase;line-height:1.5}
.efi-card__price{margin:0;font-family:var(--font-serif);font-size:20px;letter-spacing:.12em;color:var(--text-muted)}
.efi-card__price del{opacity:.55;margin-right:8px}
.efi-card__price ins{text-decoration:none}
.efi-card__toggle{
  display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;
  cursor:pointer;font-family:var(--font-sans);font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;
  border:1px solid var(--line-hairline);background:transparent;color:var(--text-body);
  transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast);
  margin-top:auto;
}
.efi-card__toggle-box{
  width:16px;height:16px;flex:none;display:grid;place-items:center;
  font-size:11px;line-height:1;border:1px solid var(--line-hairline);
}
.efi-card.is-selected .efi-card__toggle{border-color:var(--surface-ink);background:var(--surface-ink);color:var(--text-on-ink)}
.efi-card.is-selected .efi-card__toggle-box{border-color:var(--line-hairline-light)}
.efi-card__toggle.is-busy{opacity:.55;pointer-events:none}

/* Kosár összegzése ------------------------------------------------------- */
.efi-summary{background:var(--surface-canvas);border:1px solid var(--line-hairline);padding:clamp(24px,3vw,40px)}
.efi-summary__head{
  display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;
  padding-bottom:18px;border-bottom:1px solid var(--line-hairline);
}
.efi-summary__title{margin:0;font-family:var(--font-serif);font-size:15px;letter-spacing:.3em;text-transform:uppercase}
.efi-summary__count{margin:0;font-family:var(--font-serif);font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted)}
.efi-summary__line{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px dotted var(--line-hairline)}
.efi-summary__line-name{font-size:15px}
.efi-summary__line-qty{color:var(--text-muted)}
.efi-summary__line-price{font-family:var(--font-serif);font-size:16px;letter-spacing:.08em}
.efi-summary__coupon{margin-top:24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.efi-summary__coupon input{
  flex:1 1 220px;min-width:0;padding:14px 16px;border:1px solid var(--line-hairline);
  background:var(--stone-1);font-family:var(--font-sans);font-size:14px;
  color:var(--text-body);outline:none;border-radius:0;
}
.efi-summary__coupon input:focus{border-color:var(--line-strong)}
.efi-summary__coupon button{
  padding:14px 26px;border:1px solid var(--line-strong);background:transparent;
  font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;cursor:pointer;color:var(--text-body);
}
.efi-summary__coupon-note{margin:10px 0 0;font-size:12px;letter-spacing:.06em;color:var(--text-accent)}
.efi-summary__rows{margin-top:26px;display:flex;flex-direction:column;gap:12px}
.efi-summary__row{display:flex;justify-content:space-between;gap:20px;font-size:14px;color:var(--text-muted)}
.efi-summary__row--accent{color:var(--text-accent)}
.efi-summary__row-value{font-family:var(--font-serif);font-size:15px;letter-spacing:.08em}
.efi-summary__total{
  margin-top:28px;padding-top:22px;border-top:1px solid var(--line-hairline);
  display:flex;justify-content:space-between;align-items:baseline;gap:20px;
}
.efi-summary__total-label{font-size:17px}
.efi-summary__total-value{font-family:var(--font-serif);font-size:clamp(24px,2.4vw,34px);letter-spacing:.08em;color:var(--text-body)}
.efi-summary__cta{margin-top:26px;display:flex;justify-content:flex-end}
.efi-summary.is-busy{opacity:.6;transition:opacity var(--dur-fast)}

/* --------------------------------------------------------------------------
   11. Folyamat
   -------------------------------------------------------------------------- */
.efi-folyamat__head{
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:32px;flex-wrap:wrap;margin-bottom:clamp(44px,6vw,88px);
}
.efi-folyamat__title{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;text-transform:uppercase;
}
.efi-folyamat__note{margin:0;max-width:34ch;font-size:13px;line-height:1.6;color:var(--text-muted)}
.efi-folyamat__grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,48px)}
.efi-folyamat__line{position:absolute;left:0;right:0;top:7px;height:1px;background:var(--line-hairline)}
.efi-step{position:relative;display:flex;flex-direction:column;gap:20px}
.efi-step__marker{height:15px;display:flex;align-items:center}
.efi-step__marker span{
  width:15px;height:15px;display:grid;place-items:center;
  background:var(--surface-taupe-soft);font-family:var(--font-display);
  font-size:13px;line-height:1;color:var(--text-accent);
}
.efi-step--last .efi-step__marker span{font-size:15px;color:var(--text-body)}
.efi-step__eyebrow{margin:0 0 12px;font-family:var(--font-serif);font-size:13px;letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted)}
.efi-step__title{margin:0 0 10px;font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:.02em}
.efi-step__text{margin:0;font-size:14px;line-height:1.65;color:var(--text-muted);text-wrap:pretty}

/* --------------------------------------------------------------------------
   12. Rendelés (pénztár)
   -------------------------------------------------------------------------- */
.efi-rendeles__inner{max-width:900px;margin:0 auto}
.efi-rendeles__head{text-align:center;margin-bottom:clamp(40px,5vw,72px)}
.efi-rendeles__title{
  margin:16px 0 0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;text-transform:uppercase;
}
.efi-form{display:flex;flex-direction:column;gap:clamp(28px,3vw,44px)}
.efi-rendeles__empty{
  display:flex;flex-direction:column;align-items:center;gap:26px;text-align:center;
  padding:clamp(28px,4vw,52px) 0;
}
.efi-rendeles__empty p{margin:0;max-width:44ch;font-size:15px;line-height:1.65;color:var(--text-muted);text-wrap:pretty}
.efi-fieldset{display:flex;flex-direction:column;gap:20px;border:0;margin:0;padding:0;min-width:0}
.efi-fieldset__legend,
.efi-form__legend{
  margin:0;padding:0;display:flex;align-items:center;gap:14px;
  font-family:var(--font-serif);font-size:15px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--text-body);
}
.efi-form__legend::before{content:"";width:28px;height:1px;background:var(--line-strong);flex:none}
.efi-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.efi-form__row--zip{grid-template-columns:minmax(0,.4fr) minmax(0,1fr)}
.efi-form__foot{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px}
.efi-form__terms{margin:0;font-size:13px;line-height:1.6;color:var(--text-muted)}
.efi-form__terms a{text-decoration:underline}
.efi-form__captcha{max-width:280px}

/* --------------------------------------------------------------------------
   13. Kapcsolat
   -------------------------------------------------------------------------- */
.efi-kapcsolat{
  max-width:var(--max-page);margin:0 auto;display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(32px,6vw,96px);align-items:center;
}
.efi-kapcsolat__title{
  margin:0 0 22px;font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;
  text-transform:uppercase;text-wrap:balance;
}
.efi-kapcsolat__lede{margin:0;max-width:38ch;font-size:15px;line-height:1.65;text-wrap:pretty}
.efi-kapcsolat__form{max-width:420px;width:100%;display:flex;flex-direction:column;gap:20px}
.efi-kapcsolat__msg{margin:0;font-size:13px;line-height:1.6;color:var(--text-accent)}

/* --------------------------------------------------------------------------
   14. Lábléc
   -------------------------------------------------------------------------- */
.efi-footer{
  background:var(--surface-ink);color:var(--text-on-ink);
  padding:clamp(48px,6vw,88px) var(--gutter) 28px;
}
.efi-footer__inner{max-width:var(--max-page);margin:0 auto}
.efi-footer__top{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;padding-bottom:36px}
.efi-footer__brand{
  margin:0;font-family:var(--font-display);font-weight:500;
  font-size:clamp(24px,3vw,40px);letter-spacing:.02em;text-transform:uppercase;
}
.efi-footer__cols{display:flex;gap:clamp(24px,5vw,72px);font-size:12px;letter-spacing:.08em;line-height:2;text-transform:uppercase}
.efi-footer__col{display:flex;flex-direction:column}
.efi-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.efi-footer__bottom{
  border-top:1px solid var(--line-hairline-light);padding-top:18px;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  font-size:11px;letter-spacing:.08em;color:var(--text-on-taupe-muted);
}
.efi-footer__bottom ul{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap}

/* --------------------------------------------------------------------------
   15. Belső oldalak (blog, statikus oldal, 404, kereső)
   -------------------------------------------------------------------------- */
.efi-page{padding:clamp(56px,7vw,120px) var(--gutter);background:var(--surface-canvas)}
.efi-page__inner{max-width:900px;margin:0 auto}
.efi-page__title{
  margin:0 0 clamp(24px,3vw,44px);font-family:var(--font-display);font-weight:500;
  font-size:clamp(30px,3.6vw,56px);line-height:1.06;letter-spacing:.02em;text-transform:uppercase;
}
.efi-prose{font-size:15px;line-height:1.65}
.efi-prose > * + *{margin-top:1.1em}
.efi-prose h2{font-family:var(--font-display);font-weight:500;font-size:clamp(24px,2.6vw,38px);line-height:1.1;letter-spacing:.02em;text-transform:uppercase;margin-top:1.6em}
.efi-prose h3{font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:.02em;margin-top:1.4em}
.efi-prose a{text-decoration:underline}
.efi-prose blockquote{margin:1.4em 0;padding-left:20px;border-left:1px solid var(--line-hairline);color:var(--text-muted)}
.efi-prose img{margin:1.4em 0}
.efi-prose ul,.efi-prose ol{padding-left:1.2em}

/* Jogi oldalak (ÁSZF, Adatkezelési tájékoztató) */
.efi-legal__lead{
  font-family:var(--font-serif);font-size:var(--text-eyebrow);
  letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--text-muted);
}
.efi-legal__download{
  margin-top:clamp(32px,4vw,56px);padding-top:22px;
  border-top:1px solid var(--line-hairline);
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;
}
.efi-prose h3{font-size:17px;letter-spacing:.06em}

.efi-postlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);list-style:none;margin:0;padding:0}
.efi-postcard{display:flex;flex-direction:column;gap:16px}
.efi-postcard__title{margin:0;font-family:var(--font-serif);font-size:15px;letter-spacing:.18em;text-transform:uppercase}
.efi-postcard__meta{margin:0;font-size:13px;line-height:1.6;color:var(--text-muted)}

.efi-pagination{margin-top:clamp(32px,4vw,64px);display:flex;gap:12px;flex-wrap:wrap;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.efi-pagination .page-numbers{padding:10px 16px;border:1px solid var(--line-hairline)}
.efi-pagination .page-numbers.current{background:var(--surface-ink);color:var(--text-on-ink);border-color:var(--surface-ink)}

.efi-searchform{display:flex;gap:12px;max-width:420px}
.efi-searchform input[type=search]{
  flex:1;padding:10px 0;background:transparent;border:0;border-bottom:1px solid var(--line-hairline);
  font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-body);outline:none;border-radius:0;
}
.efi-searchform input[type=search]:focus{border-bottom-color:var(--line-strong)}

.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;
  overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important;
}

/* --------------------------------------------------------------------------
   16. Reszponzív — a mockup desktop nézete változatlan marad
   -------------------------------------------------------------------------- */
@media (max-width:1024px){
  .efi-folyamat__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(36px,6vw,56px)}
  .efi-folyamat__line{display:none}
  .efi-postlist{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:900px){
  .efi-nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center}
  .efi-nav{
    position:absolute;left:0;right:0;top:100%;
    display:none;flex-direction:column;gap:0;
    padding:8px var(--gutter) 24px;
    background:rgba(252,253,245,.97);
    -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line-hairline);
  }
  .efi-nav.is-open{display:flex}
  .efi-nav ul{flex-direction:column;gap:0;width:100%}
  .efi-nav li{border-bottom:1px solid var(--line-hairline)}
  .efi-nav li:last-child{border-bottom:0}
  .efi-nav a{display:block;padding:14px 0;font-size:12px}
  .efi-header__inner{position:relative;flex-wrap:nowrap}
}

@media (max-width:860px){
  .efi-story,
  .efi-split--image-left,
  .efi-split--image-right,
  .efi-csomag__head,
  .efi-arak__grid,
  .efi-kapcsolat{grid-template-columns:minmax(0,1fr)}
  .efi-split--image-left .ds-archimg{order:-1}
  .efi-csomag__grid,
  .efi-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .efi-parallax{background-attachment:scroll}
  .efi-hero__body{position:relative;inset:auto;padding:clamp(36px,8vw,64px) 0;background:var(--surface-taupe)}
  .efi-hero__scrim{display:none}
  .efi-hero__img{height:clamp(300px,46vh,460px)}
  .efi-hero__title,
  .efi-hero__lede{color:var(--text-on-taupe)}
  .efi-split__text,
  .efi-story__body{max-width:none}
}

@media (max-width:600px){
  .efi-csomag__grid,
  .efi-group__grid,
  .efi-folyamat__grid,
  .efi-postlist{grid-template-columns:minmax(0,1fr)}
  .efi-form__row,
  .efi-form__row--zip{grid-template-columns:minmax(0,1fr)}
  .efi-footer__top{flex-direction:column}
  .efi-header__cart span:not(.efi-header__cart-count){display:none}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .efi-parallax{background-attachment:scroll}
}

html{scroll-behavior:smooth}
@media (max-width:900px){html{scroll-padding-top:72px}}
html{scroll-padding-top:80px}
