/* ==========================================================================
   Allma Design Shop 2.0 — page sections (home, categories, packages, news,
   contact, favorites, generic pages).
   ========================================================================== */

/* ---------- Generic page head / prose / empty states ---------- */
.a-pagehead { padding: 8px 0 22px; background: linear-gradient(180deg, #fff1e3, var(--a-bg)); border-bottom: 1px solid var(--a-line); }
.a-pagehead__title { margin-top: 10px; font-size: clamp(30px, 3.6vw, 46px); letter-spacing: -0.035em; }
.a-pagehead__title em { font-style: italic; }
.a-pagehead__text { margin-top: 10px; color: var(--a-muted); max-width: 680px; }
.a-pagehead .a-label { margin-top: 12px; }
.a-prose { max-width: 860px; margin: 0 auto; font-size: 16px; line-height: 1.75; color: var(--a-text); }
.a-prose > * + * { margin-top: 1.1em; }
.a-prose h2 { font-size: 28px; margin-top: 1.6em; }
.a-prose h3 { font-size: 22px; margin-top: 1.4em; }
.a-prose a { color: var(--a-orange); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.a-prose ul { list-style: disc; padding-left: 1.4em; }
.a-prose ol { list-style: decimal; padding-left: 1.4em; }
.a-prose img { border-radius: calc(16px * var(--a-rf)); }
.a-prose blockquote { margin-left: 0; padding: 14px 20px; border-left: 4px solid var(--a-orange); background: #fff; border-radius: 0 calc(14px * var(--a-rf)) calc(14px * var(--a-rf)) 0; }
.a-prose--woo { max-width: none; }
.a-article__cover { margin: 0 auto 28px; max-width: 980px; border-radius: calc(22px * var(--a-rf)); overflow: hidden; box-shadow: var(--a-shadow); }
.a-article__comments { margin-top: 48px; }
.a-emptybox { display: flex; flex-direction: column; align-items: center; text-align: center; gap: calc(12px * var(--a-sf)); padding: 56px 24px; background: #fff; border: 1px dashed var(--a-orange-line); border-radius: calc(24px * var(--a-rf)); }
.a-emptybox h1, .a-emptybox h2 { font-size: 26px; }
.a-emptybox p { color: var(--a-muted); max-width: 460px; }
.a-emptybox .a-btn { margin-top: 8px; }
.a-emptybox__icon { display: inline-flex; width: 68px; height: 68px; align-items: center; justify-content: center; border-radius: 50%; background: var(--a-orange-soft); color: var(--a-orange); }
.a-emptybox__icon svg { width: 32px; height: 32px; }
.a-emptybox__code { font-size: clamp(70px, 12vw, 130px); font-weight: 800; line-height: 1; letter-spacing: -0.05em; background: var(--a-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ---------- Home: category row ---------- */
.a-catrow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: calc(18px * var(--a-sf)); }
.a-catcard { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--a-line); border-radius: calc(20px * var(--a-rf)); box-shadow: var(--a-shadow-sm); overflow: hidden; transition: .2s; }
.a-catcard:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(60, 28, 0, .11); border-color: var(--a-orange-line); }
.a-catcard__media { display: block; aspect-ratio: 16 / 9.4; background: linear-gradient(160deg, #fff1e3, #ffe2c8); overflow: hidden; }
.a-catcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.a-catcard:hover .a-catcard__media img { transform: scale(1.05); }
.a-catcard__body { display: flex; flex-direction: column; gap: 4px; padding: 14px 52px 16px 16px; }
.a-catcard__body strong { font-size: 16.5px; font-weight: 800; color: var(--a-ink); letter-spacing: -0.02em; }
.a-catcard__body small { font-size: 12.5px; line-height: 1.4; color: var(--a-muted); }
.a-catcard__go { position: absolute; right: 14px; bottom: 16px; width: 28px; height: 28px; border-radius: 50%; border: 1.5px solid var(--a-orange); color: var(--a-orange); display: inline-flex; align-items: center; justify-content: center; transition: .15s; }
.a-catcard__go svg { width: 14px; height: 14px; }
.a-catcard:hover .a-catcard__go { background: var(--a-grad); color: #fff; border-color: transparent; }

/* ---------- Home: packages banner ---------- */
.a-banner { position: relative; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) auto; align-items: center; gap: calc(26px * var(--a-sf)); padding: 26px 250px 26px 40px; min-height: 148px; border-radius: calc(26px * var(--a-rf)); color: #fff; overflow: hidden; background: radial-gradient(520px 220px at 6% 130%, rgba(255, 138, 28, .6), transparent 65%), linear-gradient(115deg, #1d1d21, #0f0f11); border: 1px solid #2b2b31; box-shadow: 0 20px 44px rgba(23, 23, 26, .3); }
.a-banner h2 { color: #fff; font-size: clamp(24px, 2.1vw, 30px); font-style: italic; line-height: 1.08; }
.a-banner h2 em { color: var(--a-orange-2); }
.a-banner p { color: #e1e1e6; font-size: 14.5px; padding-left: 30px; border-left: 1px solid rgba(255, 255, 255, .22); max-width: 300px; }
.a-banner .a-btn--primary { background: linear-gradient(90deg, #ffa733, #ff8a1c); color: #17171a !important; }
.a-banner__art { position: absolute; right: 0; top: 0; bottom: 0; width: 280px; height: 100%; object-fit: cover; object-position: left center; -webkit-mask-image: linear-gradient(90deg, transparent, #000 35%); mask-image: linear-gradient(90deg, transparent, #000 35%); }

/* ---------- Categories page ---------- */
.a-bigcats { display: grid; gap: calc(18px * var(--a-sf)); }
.a-bigcats__row { display: grid; gap: calc(18px * var(--a-sf)); }
.a-bigcats__row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.a-bigcats__row--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.a-bigcat { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); grid-template-areas: "head art" "text art" "btn art"; align-content: center; gap: calc(12px * var(--a-sf)) 8px; padding: 26px 0 26px 28px; min-height: 232px; background: #fff; border: 1px solid var(--a-line); border-radius: calc(22px * var(--a-rf)); box-shadow: var(--a-shadow-sm); overflow: hidden; transition: .2s; }
.a-bigcat:hover { transform: translateY(-3px); box-shadow: 0 20px 42px rgba(60, 28, 0, .11); }
.a-bigcat__head { grid-area: head; display: flex; align-items: center; gap: calc(12px * var(--a-sf)); font-size: 23px; font-weight: 800; color: var(--a-ink); letter-spacing: -0.02em; align-self: end; }
.a-bigcat__head svg { width: 36px; height: 36px; color: var(--a-orange); stroke-width: 1.5; flex: none; }
.a-bigcat__text { grid-area: text; font-size: 15px; line-height: 1.5; color: var(--a-ink-2); max-width: 270px; }
.a-bigcat .a-btn { grid-area: btn; justify-self: start; align-self: start; margin-top: 6px; }
.a-bigcat__art { grid-area: art; position: relative; align-self: stretch; display: block; margin: -26px 0; }
.a-bigcat__art img { width: 100%; height: 100%; object-fit: cover; object-position: left center; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 22%); mask-image: linear-gradient(90deg, transparent 0, #000 22%); }
.a-bigcats__row--3 .a-bigcat { grid-template-columns: minmax(0, 1.15fr) minmax(0, .8fr); min-height: 168px; padding: 20px 0 20px 20px; gap: 8px 4px; }
.a-bigcats__row--3 .a-bigcat__head { font-size: 19px; }
.a-bigcats__row--3 .a-bigcat__head svg { width: 28px; height: 28px; }
.a-bigcats__row--3 .a-bigcat__text { font-size: 13px; }
.a-bigcats__row--3 .a-bigcat__art { margin: -20px 0; }

/* ---------- Hero variants ---------- */
.a-hero--home .a-hero__art img { max-height: 380px; }
.a-hero--categories .a-hero__title { font-size: clamp(32px, 3.8vw, 48px); }
.a-hero--news .a-hero__art img, .a-hero--contact .a-hero__art img, .a-hero--packages .a-hero__art img { max-height: 340px; }
.a-hero--home .a-hero__grid { min-height: 340px; padding-bottom: 66px; }
/* Shop hero: laid out like the approved design (1440 px reference, scales down proportionally). */
.a-hero--shop .a-hero__grid { padding-bottom: 28px; }
.a-hero--shop .a-hero__art img { max-height: 300px; }
@media (min-width: 1025px) {
  .a-hero--shop .a-hero__grid { display: block; min-height: min(372px, 25.8vw); padding: 22px 24px 0 32px; }
  .a-hero--shop .a-hero__copy { padding: 0; }
  .a-hero--shop .a-crumbs { padding: 0; }
  .a-hero--shop .a-kicker { margin: 31px 0 12px; }
  .a-hero--shop .a-hero__title { font-size: clamp(34px, 3.68vw, 53px); line-height: 1.06; letter-spacing: -0.035em; white-space: nowrap; }
  .a-hero--shop .a-hero__text { margin-top: 10px; max-width: min(562px, 39vw); font-size: clamp(15px, 1.285vw, 18.5px); line-height: 1.22; color: var(--a-ink); }
  .a-hero--shop .a-hero__inline { margin-top: 20px; flex-wrap: nowrap; }
  .a-hero--shop .a-hero__art { position: absolute; right: -46px; top: 0; width: min(779px, 54.1vw); align-self: auto; display: block; z-index: 1; }
  .a-hero--shop .a-hero__art img { width: 100%; height: auto; max-height: none; object-fit: cover; mix-blend-mode: normal;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 13%, #000 100%), linear-gradient(180deg, #000 0, #000 88%, transparent 100%); -webkit-mask-composite: source-in;
    mask-image: linear-gradient(90deg, transparent 0, #000 13%, #000 100%), linear-gradient(180deg, #000 0, #000 88%, transparent 100%); mask-composite: intersect; }
}

/* ---------- Packages page ---------- */
.a-pkgrid { align-items: stretch; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }
.a-pkcard { position: relative; display: flex; flex-direction: column; gap: calc(16px * var(--a-sf)); padding: 22px 24px 24px; background: #fff; border: 1px solid var(--a-line); border-radius: calc(24px * var(--a-rf)); box-shadow: var(--a-shadow); }
.a-pkcard__chip { align-self: flex-start; display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: var(--a-pill); background: #ffe9d4; color: var(--a-ink); font-size: 12.5px; font-weight: 700; }
.a-pkcard__chip svg { width: 16px; height: 16px; color: var(--a-orange); }
.a-pkcard__top { display: grid; grid-template-columns: minmax(0, 1fr) 46%; gap: 10px; align-items: center; min-height: 118px; }
.a-pkcard__top h3 { font-size: 30px; letter-spacing: -0.03em; }
.a-pkcard__top p { margin-top: 8px; font-size: 13.5px; line-height: 1.45; color: var(--a-ink-2); }
.a-pkcard__art img { width: 100%; max-height: 130px; object-fit: contain; mix-blend-mode: multiply; }
.a-checklist { display: grid; gap: 9px; }
.a-checklist li { display: flex; align-items: flex-start; gap: 11px; font-size: 14.5px; line-height: 1.35; color: var(--a-ink); }
.a-checklist svg { width: 18px; height: 18px; color: var(--a-orange); margin-top: 1px; stroke-width: 2.4; }
.a-pkcard .a-checklist { margin-top: 2px; flex: 1; }
.a-tablewrap { contain: paint; overflow-x: auto; -webkit-overflow-scrolling: touch; background: #fff; border: 1px solid var(--a-line); border-radius: calc(18px * var(--a-rf)); box-shadow: var(--a-shadow-sm); }
.a-compare { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 14.5px; }
.a-compare th, .a-compare td { padding: 11px 20px; text-align: center; }
.a-compare thead th { background: #fff; font-weight: 800; color: var(--a-ink); border-bottom: 1px solid var(--a-line); }
.a-compare thead th:first-child { text-align: left; }
.a-compare thead svg { width: 20px; height: 20px; color: var(--a-orange); margin-right: 6px; }
.a-compare tbody th { text-align: left; font-weight: 500; color: var(--a-ink-2); white-space: nowrap; }
.a-compare tbody th svg { width: 20px; height: 20px; color: var(--a-orange); margin-right: 10px; }
.a-compare tbody th strong { font-weight: 800; color: var(--a-ink); }
.a-compare tbody th span { font-size: 13.5px; }
.a-compare tbody tr:nth-child(odd) { background: #f8f1ea; }
.a-yes { display: inline-flex; width: 24px; height: 24px; align-items: center; justify-content: center; border-radius: 50%; background: var(--a-grad); color: #fff; }
.a-yes svg { width: 13px; height: 13px; stroke-width: 3; }
.a-no { color: var(--a-ink); font-weight: 700; }
.a-goals { gap: calc(20px * var(--a-sf)); }
.a-goal { display: grid; grid-template-columns: 36% minmax(0, 1fr); align-items: stretch; background: #fff; border: 1px solid var(--a-line); border-radius: calc(20px * var(--a-rf)); box-shadow: var(--a-shadow-sm); overflow: hidden; transition: .2s; }
.a-goal:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(60, 28, 0, .1); }
.a-goal__art img { width: 100%; height: 100%; object-fit: cover; }
.a-goal__body { display: flex; flex-direction: column; gap: 6px; padding: 18px 18px 18px 14px; justify-content: center; }
.a-goal__body strong { font-size: 18px; font-weight: 800; color: var(--a-ink); }
.a-goal__body small { font-size: 13px; line-height: 1.45; color: var(--a-ink-2); }
.a-goal__body .a-textlink { font-size: 13.5px; margin-top: 2px; }

/* ---------- News page ---------- */
.a-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items: stretch; background: linear-gradient(120deg, #ffe9d3, #fff3e7 55%, #fff9f3); border: 1px solid var(--a-orange-line); border-radius: calc(26px * var(--a-rf)); box-shadow: var(--a-shadow); overflow: hidden; }
.a-feature__media { min-height: 220px; }
.a-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.a-feature__body { display: flex; flex-direction: column; align-items: flex-start; gap: calc(14px * var(--a-sf)); padding: 30px 40px 30px 20px; justify-content: center; }
.a-feature__body h2 { font-size: clamp(26px, 2.8vw, 36px); line-height: 1.1; }
.a-feature__body p { color: var(--a-ink-2); font-size: 15.5px; line-height: 1.55; max-width: 520px; }
.a-grid--news .a-acard__media { aspect-ratio: 16 / 7.8; }
.a-grid--news .a-acard__body { padding: 16px 18px 18px; }
.a-grid--news .a-acard__body h3 { font-size: 18.5px; }
.a-split { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: calc(36px * var(--a-sf)); align-items: start; }
.a-split__col > .a-sechead { margin-bottom: 18px; }
.a-split__col .a-sechead__title { font-size: 28px; align-items: flex-start; }
.a-split__col .a-sechead__title em { display: block; }
.a-linklist { display: grid; gap: calc(12px * var(--a-sf)); }
.a-linkrow { display: flex; align-items: center; gap: calc(16px * var(--a-sf)); padding: 14px 18px; background: #fff; border: 1px solid var(--a-line); border-radius: calc(16px * var(--a-rf)); box-shadow: var(--a-shadow-sm); transition: .15s; }
.a-linkrow:hover { border-color: var(--a-orange-line); transform: translateX(3px); }
.a-linkrow > svg { width: 34px; height: 34px; color: var(--a-orange); stroke-width: 1.5; flex: none; }
.a-linkrow span { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.a-linkrow strong { font-size: 15.5px; color: var(--a-ink); }
.a-linkrow small { font-size: 12.5px; color: var(--a-muted); }
.a-linkrow i { flex: none; width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid var(--a-orange); color: var(--a-orange); display: inline-flex; align-items: center; justify-content: center; }
.a-linkrow i svg { width: 14px; height: 14px; }

/* ---------- Contact page ---------- */
.a-infocards { display: grid; grid-template-columns: repeat(4, 1fr); background: #fff; border: 1px solid var(--a-line); border-radius: calc(24px * var(--a-rf)); box-shadow: var(--a-shadow); padding: 22px 10px; }
.a-infocard { display: flex; align-items: flex-start; gap: calc(14px * var(--a-sf)); padding: 4px 22px; position: relative; }
.a-infocard + .a-infocard::before { content: ""; position: absolute; left: 0; top: 4%; bottom: 4%; width: 1px; background: var(--a-line); }
.a-infocard__icon { flex: none; color: var(--a-orange); }
.a-infocard__icon svg { width: 44px; height: 44px; stroke-width: 1.5; }
.a-infocard strong { display: block; font-size: 19px; font-weight: 800; color: var(--a-ink); }
.a-infocard a, .a-infocard__value { display: block; margin-top: 2px; font-weight: 700; font-size: 15.5px; color: var(--a-ink); }
.a-infocard a:hover { color: var(--a-orange); }
.a-infocard small { display: block; margin-top: 8px; font-size: 13px; line-height: 1.5; color: var(--a-muted); }
.a-contactgrid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr); gap: calc(36px * var(--a-sf)); align-items: start; }
.a-contactgrid__intro h2 { display: flex; align-items: flex-start; gap: calc(16px * var(--a-sf)); font-size: clamp(30px, 3.2vw, 42px); line-height: 1.05; }
.a-contactgrid__intro h2 > span:last-child { display: block; }
.a-contactgrid__intro h2 .a-dash { margin-top: .6em; flex: none; }
.a-contactgrid__intro h2 em { display: block; }
.a-contactgrid__intro > p { margin: 16px 0 22px; font-size: 15.5px; line-height: 1.65; color: var(--a-ink-2); }
.a-checkcard { background: #fff; border: 1px solid var(--a-line); border-radius: calc(20px * var(--a-rf)); box-shadow: var(--a-shadow-sm); padding: 22px 24px; }
.a-checkcard > strong { display: block; font-size: 17px; margin-bottom: 14px; }
.a-form { background: #fff; border: 1px solid var(--a-line); border-radius: calc(24px * var(--a-rf)); box-shadow: var(--a-shadow); padding: 28px; display: grid; gap: calc(18px * var(--a-sf)); }
.a-form__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.a-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(16px * var(--a-sf)) calc(20px * var(--a-sf)); }
.a-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.a-field--full { grid-column: 1 / -1; }
.a-field label { font-weight: 700; font-size: 14px; color: var(--a-ink); }
.a-field label b { color: var(--a-orange); }
.a-field label small { color: var(--a-muted); font-weight: 500; }
.a-input { position: relative; display: flex; align-items: center; }
.a-input > svg:first-child { position: absolute; left: 14px; width: 18px; height: 18px; color: var(--a-ink-2); pointer-events: none; }
.a-input input, .a-input select, .a-input textarea { width: 100%; min-height: 48px; padding: 0 14px 0 42px; border-radius: calc(12px * var(--a-rf)); border: 1px solid var(--a-line); background: #fffaf6; font-size: 14.5px; transition: .15s; appearance: none; -webkit-appearance: none; }
.a-input textarea { padding: 14px 14px 14px 42px; min-height: 112px; resize: vertical; line-height: 1.5; }
.a-input--area > svg:first-child { top: 15px; }
.a-input select { padding-right: 40px; cursor: pointer; color: var(--a-muted); }
.a-input select:valid { color: var(--a-ink); }
.a-input .a-input__chev { position: absolute; left: auto; right: 14px; width: 16px; height: 16px; }
.a-input input::placeholder, .a-input textarea::placeholder { color: var(--a-faint); }
.a-input input:focus, .a-input select:focus, .a-input textarea:focus { outline: none; background: #fff; border-color: var(--a-orange-3); box-shadow: 0 0 0 4px rgba(242, 100, 10, .12); }
.a-field.has-error .a-input input, .a-field.has-error .a-input select, .a-field.has-error .a-input textarea { border-color: #e0482a; background: #fff6f4; }
.a-consent { display: flex; align-items: flex-start; gap: calc(12px * var(--a-sf)); font-size: 13.5px; color: var(--a-ink-2); cursor: pointer; }
.a-consent input { flex: none; width: 20px; height: 20px; margin-top: 1px; accent-color: var(--a-orange); }
.a-consent a { color: var(--a-orange); text-decoration: underline; text-underline-offset: 2px; font-weight: 600; }
.a-alert { padding: 14px 18px; border-radius: calc(14px * var(--a-rf)); font-weight: 600; font-size: 14.5px; }
.a-alert--ok { background: #e9f8ef; color: #12703a; border: 1px solid #bfe8cf; }
.a-alert--err { background: #fdeeea; color: #b32d14; border: 1px solid #f6c8bd; }
.a-helpgrid { gap: calc(18px * var(--a-sf)); }
.a-help { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--a-line); border-radius: calc(20px * var(--a-rf)); box-shadow: var(--a-shadow-sm); overflow: hidden; transition: .2s; }
.a-help:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(60, 28, 0, .1); }
.a-help__art { display: block; aspect-ratio: 16 / 8.2; background: linear-gradient(160deg, #fff1e3, #ffe2c8); overflow: hidden; }
.a-help__art img { width: 100%; height: 100%; object-fit: cover; }
.a-help__body { display: flex; flex-direction: column; gap: 6px; padding: 14px 54px 18px 16px; }
.a-help__body strong { font-size: 16.5px; line-height: 1.25; font-weight: 800; color: var(--a-ink); }
.a-help__body small { font-size: 12.5px; line-height: 1.5; color: var(--a-muted); }
.a-help__go { position: absolute; right: 14px; bottom: 16px; width: 30px; height: 30px; border-radius: 50%; border: 1.5px solid var(--a-orange); color: var(--a-orange); display: inline-flex; align-items: center; justify-content: center; }
.a-help__go svg { width: 14px; height: 14px; }

/* ---------- Favorites ---------- */
[data-allma-favorites-page] .a-grid:empty { display: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
  .a-catrow { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .a-banner { padding-right: 200px; }
  .a-banner__art { width: 220px; }
  .a-bigcats__row--3 .a-bigcat { grid-template-columns: 1fr; grid-template-areas: "head" "text" "btn" "art"; padding: 22px 22px 0; }
  .a-bigcats__row--3 .a-bigcat__art { margin: 6px -22px 0; height: 150px; }
  .a-bigcats__row--3 .a-bigcat__art img { -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 25%); mask-image: linear-gradient(180deg, transparent 0, #000 25%); object-position: center; }
  .a-infocards { grid-template-columns: repeat(2, 1fr); row-gap: calc(22px * var(--a-sf)); }
  .a-infocard:nth-child(odd)::before { display: none; }
  .a-helpgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 1024px) {
  .a-feature { grid-template-columns: 1fr; }
  .a-feature__body { padding: 24px; }
  .a-split, .a-contactgrid { grid-template-columns: 1fr; }
  .a-pkgrid { grid-template-columns: 1fr; }
  .a-goals { grid-template-columns: 1fr; }
  .a-bigcats__row--2 { grid-template-columns: 1fr; }
  .a-banner { grid-template-columns: 1fr; padding: 28px 28px 150px; gap: calc(14px * var(--a-sf)); }
  .a-banner p { padding-left: 0; border-left: 0; }
  .a-banner .a-btn { justify-self: start; }
  .a-banner__art { width: 100%; height: 150px; top: auto; -webkit-mask-image: linear-gradient(180deg, transparent, #000 40%); mask-image: linear-gradient(180deg, transparent, #000 40%); object-position: center; }
}
@media (max-width: 720px) {
  .a-catrow { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(12px * var(--a-sf)); }
  .a-catcard__body { padding: 12px 40px 14px 12px; }
  .a-catcard__body strong { font-size: 14.5px; }
  .a-bigcats__row--3 { grid-template-columns: 1fr; }
  .a-bigcat { grid-template-columns: 1fr; grid-template-areas: "head" "text" "btn" "art"; padding: 22px 22px 0; min-height: 0; }
  .a-bigcat__art { margin: 6px -22px 0; height: 150px; }
  .a-bigcat__art img { -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 25%); mask-image: linear-gradient(180deg, transparent 0, #000 25%); object-position: center; }
  .a-infocards { grid-template-columns: 1fr; padding: 16px 6px; }
  .a-infocard + .a-infocard::before { display: none; }
  .a-form { padding: 20px; }
  .a-form__grid { grid-template-columns: 1fr; }
  .a-helpgrid { grid-template-columns: 1fr; }
  .a-pkcard__top { grid-template-columns: 1fr 40%; }
  .a-pkcard__top h3 { font-size: 26px; }
  .a-goal { grid-template-columns: 34% 1fr; }
  .a-compare th, .a-compare td { padding: 9px 12px; }
}

/* ===== v2.2.2 — Home 1:1 după machetă (componente comune) ===== */
.a-hero--home { background: radial-gradient(720px 400px at 76% 40%, rgba(255, 190, 130, .5), transparent 70%), linear-gradient(100deg, #fbf4f2 0%, #fcf1ec 46%, #fbe7d9 100%); }
.a-hero--home .a-hero__grid { position: static; grid-template-columns: minmax(0, 640px) minmax(0, 1fr); min-height: 384px; padding-top: 14px; padding-bottom: 56px; }
.a-hero--home .a-hero__copy { z-index: 3; }
.a-hero--home .a-kicker { margin-bottom: 8px; }
.a-hero--home .a-hero__title { font-size: clamp(32px, 3.65vw, 52.5px); line-height: 1; letter-spacing: -0.035em; }
.a-hero--home .a-hero__text { margin-top: 14px; max-width: 580px; font-size: 18px; line-height: 1.33; font-weight: 500; color: #1c2438; }
.a-hero--home .a-hero__actions { margin-top: 22px; }
.a-hero--home .a-hero__art { position: absolute; right: 0; top: 0; bottom: 0; width: min(68%, 1000px); display: block; pointer-events: none; z-index: 1; }
.a-hero--home .a-hero__art img { position: absolute; right: 0; top: 0; height: 100%; width: auto; max-width: none; max-height: none; object-fit: cover; object-position: right center; }

.a-hero-strip .a-strip { padding: 10px 8px; border-radius: calc(28px * var(--a-rf)); border: 1px solid rgba(238, 220, 204, .55); background: linear-gradient(180deg, #fff 0%, #fdf8f5 100%); box-shadow: 0 14px 32px rgba(80, 40, 0, .08); }
.a-hero-strip .a-strip__item { padding: 8px 24px; gap: 16px; align-items: center; }
.a-hero-strip .a-strip__icon svg { width: 46px; height: 46px; stroke-width: 1.35; }
.a-hero-strip .a-strip__item strong { font-size: 17px; letter-spacing: -0.015em; }
.a-hero-strip .a-strip__item small { font-size: 14px; line-height: 1.25; color: #1c2438; font-weight: 500; }

/* categorii (rând de 5) */
.a-catcard { border: 0; border-radius: calc(22px * var(--a-rf)); box-shadow: 0 10px 26px rgba(80, 40, 0, .08); background: linear-gradient(180deg, #fff 0%, #fffaf6 100%); }
.a-catcard__media { aspect-ratio: 253 / 138; }
.a-catcard__media img { object-position: 50% 62%; }
.a-catcard__body { padding: 12px 54px 14px 18px; gap: 3px; }
.a-catcard__body strong { font-size: 17.5px; letter-spacing: -0.02em; }
.a-catcard__body small { font-size: 14px; line-height: 1.25; color: #1c2438; font-weight: 500; }
.a-catcard__go { right: 14px; bottom: 16px; width: 26px; height: 26px; }

/* filtre + sortare */
.a-pill { min-height: 34px; padding: 0 17px; font-size: 13px; }
.a-sort { margin-left: 4px; min-height: 34px; padding: 0 12px 0 16px; gap: 4px; font-size: 13px; color: #1c2438; background: #fff; border: 1px solid var(--a-line); border-radius: var(--a-pill); box-shadow: 0 2px 6px rgba(60, 28, 0, .05); }
.a-sort select { height: 30px; padding: 0 24px 0 0; border: 0; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2317171a' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right center; font-weight: 800; font-size: 13px; }

/* card produs */
.a-pcard__fav { right: 10px; top: 10px; width: 30px; height: 30px; background: #fff; box-shadow: 0 3px 8px rgba(23, 23, 26, .14); filter: none; }
.a-pcard__fav svg { width: 17px; height: 17px; }
.a-pcard__title, .a-pcard h3 { letter-spacing: -0.02em; }

/* bandă „Pachete” */
.a-banner { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr) auto; justify-content: start; gap: 0 28px; padding: 14px 380px 14px 54px; min-height: 105px; border-radius: calc(30px * var(--a-rf)); box-shadow: 0 16px 34px rgba(23, 23, 26, .2); }
.a-banner h2 { font-style: normal; font-size: clamp(24px, 2.35vw, 34px); line-height: 1.06; letter-spacing: -0.03em; font-weight: 800; }
.a-banner h2 em { font-style: italic; }
.a-banner p { max-width: none; padding-left: 40px; font-size: 15px; line-height: 1.38; font-weight: 500; }
.a-banner .a-btn--primary { min-height: 42px; padding: 0 26px; font-size: 15px; font-weight: 800; }
.a-banner__art { width: 400px; object-fit: cover; object-position: right center; -webkit-mask-image: linear-gradient(90deg, transparent, #000 30%); mask-image: linear-gradient(90deg, transparent, #000 30%); }

/* bandă CTA */
.a-cta { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.25fr) auto; gap: 0 36px; padding: 14px 52px 14px 72px; min-height: 90px; border-radius: calc(30px * var(--a-rf)); }
.a-cta h2 { font-style: normal; font-size: clamp(24px, 2.1vw, 30px); letter-spacing: -0.03em; line-height: 1.08; }
.a-cta h2 em { font-style: italic; }
.a-cta p { padding-left: 36px; border-left: 2px solid var(--a-orange); font-size: 14.5px; line-height: 1.4; font-weight: 500; }
.a-cta .a-btn--primary { min-height: 44px; padding: 0 30px; font-size: 15px; font-weight: 800; }

/* „De ce să alegi” (rând simplu cu separatoare) */
.a-benefits:not([class*="a-benefits--"]) { gap: 0; }
.a-benefits:not([class*="a-benefits--"]) .a-benefit { position: relative; align-items: center; padding: 2px 26px; gap: 18px; }
.a-benefits:not([class*="a-benefits--"]) .a-benefit + .a-benefit::before { content: ""; position: absolute; left: 0; top: 4%; bottom: 4%; width: 1px; background: rgba(23, 23, 26, .16); }
.a-benefits:not([class*="a-benefits--"]) .a-benefit__icon svg { width: 48px; height: 48px; stroke-width: 1.35; }
.a-benefits:not([class*="a-benefits--"]) .a-benefit strong { font-size: 17px; letter-spacing: -0.015em; }
.a-benefits:not([class*="a-benefits--"]) .a-benefit small { margin-top: 3px; font-size: 14px; line-height: 1.3; color: #1c2438; font-weight: 500; }

/* articole (rând) */
.a-acard--row { padding: 7px; border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); background: linear-gradient(180deg, #fff 0%, #fffaf6 100%); box-shadow: 0 8px 22px rgba(80, 40, 0, .06); }
.a-acard--row .a-acard__media { flex: 0 0 160px; min-height: 126px; border-radius: calc(16px * var(--a-rf)); }
.a-acard--row .a-acard__body { padding: 6px 14px 6px 16px; gap: 4px; justify-content: center; }
.a-acard--row .a-acard__body h3 { font-size: 16.5px; line-height: 1.2; letter-spacing: -0.02em; }
.a-acard--row .a-acard__body p { font-size: 14px; line-height: 1.28; color: #1c2438; font-weight: 500; }
.a-acard--row .a-acard__body .a-textlink { font-size: 14.5px; font-weight: 800; padding-top: 2px; }
.a-acard--row .a-chip { align-self: flex-start; background: #fff4ea; color: #b54500; border: 1px solid #f6b784; border-radius: 6px; padding: 2px 8px; font-size: 11.5px; font-weight: 800; box-shadow: none; }
.a-hero--home .a-hero__grid { padding-bottom: 40px; }
.a-hero--home .a-hero__art img { height: clamp(250px, 26.9vw, 420px); }

/* antet 1:1 (separator după logo, meniu aliniat la stânga, logo puțin mai mare) */
@media (min-width: 1101px) {
  .a-logo__mark { width: 44px; height: 44px; }
  .a-logo__text strong { font-size: 23.5px; }
  .a-logo__text em { font-size: 20.5px; }
  .a-nav { position: relative; margin-left: 6px; padding-left: 22px; }
  .a-nav::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 40px; transform: translateY(-50%); background: rgba(23, 23, 26, .14); }
  .a-nav__list { justify-content: flex-start; }
  .a-nav__list > li > a { padding: 10px 18px; font-size: 14px; font-weight: 800; letter-spacing: -0.005em; }
  .a-nav__list > li.is-current > a::after, .a-nav__list > li.current-menu-item > a::after { left: 18px; right: 18px; }
  .a-search { width: clamp(220px, 23.4vw, 336px); }
}
@media (min-width: 1101px) {
  .a-nav { margin-left: 14px; padding-left: 28px; }
  .a-nav__list > li > a { padding: 10px 16px; font-size: 13.8px; gap: 3px; }
  .a-nav__list > li > a svg { width: 12px; height: 12px; }
  .a-nav__list > li.is-current > a::after, .a-nav__list > li.current-menu-item > a::after { left: 16px; right: 16px; }
}

/* v2.2.2 — responsive pentru componentele de mai sus */
@media (max-width: 1280px) {
  .a-banner { padding-right: 280px; }
  .a-banner__art { width: 300px; }
}
@media (max-width: 1100px) {
  .a-hero--home .a-hero__grid { position: relative; grid-template-columns: 1fr; min-height: 0; padding-bottom: 28px; }
  .a-hero--home .a-hero__art { position: relative; right: auto; top: auto; bottom: auto; width: 100%; order: -1; display: flex; justify-content: center; }
  .a-hero--home .a-hero__art img { position: static; height: auto; width: 100%; max-height: 300px; object-fit: contain; object-position: center; }
  .a-hero__text br { display: none; }
  .a-banner { grid-template-columns: 1fr; padding: 26px 26px 150px; gap: 14px; }
  .a-banner p { padding-left: 0; border-left: 0; }
  .a-banner .a-btn { justify-self: start; }
  .a-banner__art { width: 100%; height: 130px; top: auto; -webkit-mask-image: linear-gradient(180deg, transparent, #000 40%); mask-image: linear-gradient(180deg, transparent, #000 40%); object-position: right center; }
  .a-cta { grid-template-columns: 1fr; padding: 26px; gap: 14px; }
  .a-cta p { padding-left: 0; border-left: 0; }
  .a-cta .a-btn { justify-self: start; }
  .a-benefits:not([class*="a-benefits--"]) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 0; }
}
@media (max-width: 720px) {
  .a-benefits:not([class*="a-benefits--"]) { grid-template-columns: 1fr; }
  .a-benefits:not([class*="a-benefits--"]) .a-benefit + .a-benefit::before { display: none; }
  .a-benefits:not([class*="a-benefits--"]) .a-benefit { padding: 4px 8px; }
  .a-acard--row .a-acard__media { flex-basis: 120px; min-height: 120px; }
  .a-hero-strip .a-strip__item { padding: 10px 16px; }
  .a-sort { width: 100%; }
}
.a-acard--row .a-acard__body { min-width: 0; }
@media (max-width: 1100px) { .a-acard--row .a-acard__media { flex-basis: 130px; } }

/* ===== v2.2.2 — Categorii 1:1 ===== */
@media (min-width: 1101px) {
  .a-hero--categories .a-hero__grid { position: static; grid-template-columns: 1fr; display: block; min-height: min(322px, 22.4vw); padding: 12px 24px 0 30px; }
  .a-hero--categories .a-crumbs { margin: 0; padding: 0; }
  .a-hero--categories .a-kicker { margin: 26px 0 8px; }
  .a-hero--categories .a-hero__title { font-size: clamp(32px, 3.4vw, 49px); line-height: .98; letter-spacing: -0.035em; }
  .a-hero--categories .a-hero__text { margin-top: 10px; max-width: 660px; font-size: clamp(15px, 1.22vw, 17.5px); line-height: 1.28; font-weight: 500; color: #1c2438; }
  .a-hero--categories .a-hero__art { position: absolute; right: -10px; top: 6px; bottom: auto; width: min(760px, 52.8vw); display: block; z-index: 1; pointer-events: none; }
  .a-hero--categories .a-hero__art img { position: static; width: 100%; height: auto; max-height: none; }
}
.a-hero--categories { background: radial-gradient(720px 380px at 74% 36%, rgba(255, 190, 130, .45), transparent 70%), linear-gradient(100deg, #fbf4f2 0%, #fcf1ec 50%, #fbe9dc 100%); }
.a-hero--categories .a-hero__grid { padding-bottom: 6px; }

.a-bigcat { border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(24px * var(--a-rf)); background: linear-gradient(100deg, #fff 0%, #fff9f4 58%, #fdeee0 100%); box-shadow: 0 12px 28px rgba(80, 40, 0, .08); min-height: 217px; padding: 24px 0 24px 30px; }
.a-bigcat__head { font-size: 24px; letter-spacing: -0.02em; }
.a-bigcat__head svg { width: 40px; height: 40px; stroke-width: 1.4; }
.a-bigcat__text { font-size: 17.5px; line-height: 1.38; color: #1c2438; font-weight: 500; max-width: 300px; }
.a-bigcat .a-btn { min-height: 40px; padding: 0 24px; font-size: 15px; font-weight: 800; }
.a-bigcats__row--3 .a-bigcat { min-height: 180px; padding: 18px 0 18px 22px; gap: 8px 4px; }
.a-bigcats__row--3 .a-bigcat__head { font-size: 23.5px; }
.a-bigcats__row--3 .a-bigcat__head svg { width: 36px; height: 36px; }
.a-bigcats__row--3 .a-bigcat__text { font-size: 16px; line-height: 1.38; }
.a-bigcats__row--3 .a-bigcat .a-btn { min-height: 36px; padding: 0 20px; font-size: 14.5px; }
.a-bigcats__row--3 .a-bigcat__art { margin: -18px 0; }

.a-steps { background: transparent; border: 0; box-shadow: none; gap: 12px; }
.a-step { background: linear-gradient(180deg, #fff, #fffaf6); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); box-shadow: 0 8px 20px rgba(80, 40, 0, .06); padding: 14px 20px 14px 16px; gap: 14px; }
.a-step + .a-step::before { display: none; }
.a-step__num { width: 32px; height: 32px; font-size: 15px; align-self: flex-start; margin-top: 4px; }
.a-step__icon svg { width: 46px; height: 46px; stroke-width: 1.35; }
.a-step strong { font-size: 20px; letter-spacing: -0.02em; }
.a-step small { margin-top: 3px; font-size: 14.5px; line-height: 1.28; color: #1c2438; font-weight: 500; }
.a-step__arrow { color: var(--a-orange); width: 22px; height: 22px; }

.a-cta--inline { padding: 12px 52px 12px 62px; min-height: 76px; }
.a-cta--inline h2 { font-style: italic; font-size: clamp(22px, 2.3vw, 33px); white-space: nowrap; }
.a-cta--inline p { font-size: 15px; }
.a-cta--inline .a-btn--primary { min-height: 44px; }
@media (max-width: 1100px) { .a-cta--inline h2 { white-space: normal; } }

.a-benefits--bar .a-benefit__icon svg { width: 44px; height: 44px; }
.a-benefits--bar .a-benefit strong { font-size: 17.5px; letter-spacing: -0.02em; }
.a-benefits--bar .a-benefit small { font-size: 14px; color: #1c2438; font-weight: 500; line-height: 1.3; }

/* FAQ: rânduri subțiri, panou de răspuns deschis la culoare */
.a-faq--dark .a-faq__list, .a-faq--side .a-faq__list { gap: 4px; }
.a-faq--dark .a-faq__item { background: transparent; box-shadow: none; border-radius: 18px; }
.a-faq--dark .a-faq__item summary { min-height: 30px; padding: 3px 12px 3px 20px; font-size: 15px; font-weight: 800; background: linear-gradient(180deg, #2b2b31, #1a1a1e); border-radius: 18px; box-shadow: 0 4px 10px rgba(23, 23, 26, .18); }
.a-faq--dark .a-faq__item[open] summary { border-radius: 18px 18px 0 0; }
.a-faq--dark .a-faq__item summary i { width: 22px; height: 22px; }
.a-faq--dark .a-faq__item summary i svg { width: 13px; height: 13px; }
.a-faq--dark .a-faq__item[open] summary i { background: transparent; color: var(--a-orange-2); border: 1.5px solid var(--a-orange-2); }
.a-faq--dark .a-faq__answer { padding: 10px 22px 12px; background: linear-gradient(180deg, #f7f1ec, #fbf7f3); color: #1c2438; font-weight: 500; font-size: 14.5px; line-height: 1.4; border-radius: 0 0 16px 16px; box-shadow: 0 4px 10px rgba(80, 40, 0, .08); }
.a-faq--dark .a-faq__answer p { color: inherit; }

.a-news--card { background: linear-gradient(180deg, #fff, #fff9f4); border-radius: calc(28px * var(--a-rf)); padding: 10px 52px 10px 62px; }
.a-news--card .a-news__copy h2 { font-size: 22px; }
.a-news--card .a-news__copy p { font-size: 15px; color: #1c2438; font-weight: 500; margin-top: 2px; }
.a-news--card .a-news__field { flex-basis: 362px; }
.a-news--card .a-news__field input { background: #fff; height: 44px; }
.a-hero--categories .a-hero__grid { min-height: min(298px, 20.7vw); }
.a-hero--categories + .a-section { padding-top: 22px; }
.a-cta--italic h2 { font-style: italic; }
.a-cta--inline { grid-template-columns: auto minmax(0, 1fr) auto; gap: 0 40px; }
.a-cta--inline p { padding-left: 40px; }
.a-news--card { grid-template-columns: auto minmax(0, 1fr) 540px; }
.a-bigcats__row--3 .a-bigcat { grid-template-columns: minmax(0, 1.32fr) minmax(0, .68fr); }
.a-bigcats__row--3 .a-bigcat__head { font-size: 22.5px; gap: 10px; }
@media (max-width: 1100px) { .a-cta--inline { grid-template-columns: 1fr; gap: 14px; } .a-cta--inline p { padding-left: 0; } .a-news--card { grid-template-columns: auto 1fr; } }

/* ===== v2.2.2 — Pachete 1:1 ===== */
.a-it { font-style: italic; }
.a-hero--packages { background: radial-gradient(720px 380px at 74% 36%, rgba(255, 190, 130, .45), transparent 70%), linear-gradient(100deg, #fbf4f2 0%, #fcf1ec 50%, #fbe9dc 100%); }
@media (min-width: 1101px) {
  .a-hero--packages .a-hero__grid { position: static; display: block; min-height: min(312px, 21.7vw); padding: 12px 24px 0 30px; }
  .a-hero--packages .a-crumbs { margin: 0; padding: 0; }
  .a-hero--packages .a-kicker { margin: 24px 0 8px; }
  .a-hero--packages .a-hero__title { font-size: clamp(30px, 3.1vw, 44.5px); line-height: .98; letter-spacing: -0.035em; }
  .a-hero--packages .a-hero__text { margin-top: 10px; max-width: 640px; font-size: clamp(15px, 1.22vw, 17.5px); line-height: 1.28; font-weight: 500; color: #1c2438; }
  .a-hero--packages .a-hero__actions { margin-top: 16px; }
  .a-hero--packages .a-hero__art { position: absolute; right: 0; top: -8px; bottom: auto; width: min(735px, 51vw); display: block; z-index: 1; pointer-events: none; }
  .a-hero--packages .a-hero__art img { position: static; width: 100%; height: auto; max-height: none; }
}
.a-hero--packages .a-hero__grid { padding-bottom: 4px; }
.a-hero--packages + .a-section { padding-top: 22px; }

.a-pkcard { padding: 20px 24px 22px; background: linear-gradient(180deg, #fff 0%, #fff7f0 100%); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(26px * var(--a-rf)); box-shadow: 0 12px 28px rgba(80, 40, 0, .08); gap: 10px; }
.a-pkcard__chip { padding: 6px 14px; font-size: 13.5px; font-weight: 800; }
.a-pkcard__top { grid-template-columns: minmax(0, 1fr) 54%; min-height: 128px; gap: 0; }
.a-pkcard__top > div:first-child { position: relative; z-index: 2; margin-right: -46px; }
.a-pkcard__top h3 { font-size: clamp(22px, 1.95vw, 28px); letter-spacing: -0.03em; line-height: 1.05; }
.a-pkcard__top p { margin-top: 8px; font-size: 15px; line-height: 1.28; color: #1c2438; font-weight: 500; }
.a-pkcard__art img { max-height: 150px; }
.a-pkcard .a-checklist li { padding: 4px 0; font-size: 16px; color: #1c2438; font-weight: 500; line-height: 1.25; }
.a-pkcard .a-checklist svg { color: var(--a-orange); width: 20px; height: 20px; stroke-width: 2.4; }
.a-pkcard .a-btn--block { min-height: 40px; font-size: 16px; font-weight: 800; }

.a-tablewrap { border-radius: calc(22px * var(--a-rf)); overflow: hidden; box-shadow: 0 10px 26px rgba(80, 40, 0, .07); }
.a-compare th, .a-compare td { padding: 5px 16px; }
.a-compare thead th { padding: 8px 16px; font-size: 16.5px; background: linear-gradient(180deg, #fff, #fdf8f4); border-left: 1px solid rgba(23, 23, 26, .08); }
.a-compare thead th:first-child { border-left: 0; font-weight: 700; }
.a-compare thead svg { width: 30px; height: 30px; margin-right: 10px; vertical-align: middle; }
.a-compare tbody th { font-size: 15px; color: #1c2438; }
.a-compare tbody th svg { width: 22px; height: 22px; margin-right: 14px; vertical-align: middle; }
.a-compare .a-yes svg, .a-compare .a-yes { width: 22px; height: 22px; }

.a-goal { padding: 10px; grid-template-columns: 150px minmax(0, 1fr); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); background: linear-gradient(180deg, #fff, #fffaf6); box-shadow: 0 8px 22px rgba(80, 40, 0, .06); }
.a-goal__art { border-radius: calc(14px * var(--a-rf)); overflow: hidden; }
.a-goal__body { padding: 4px 8px 4px 16px; gap: 4px; }
.a-goal__body strong { font-size: 18px; letter-spacing: -0.02em; }
.a-goal__body small { font-size: 14px; line-height: 1.28; color: #1c2438; font-weight: 500; }
.a-goal__body .a-textlink { font-size: 14.5px; font-weight: 800; }

.a-steps--pad .a-step { padding: 12px 20px 12px 16px; }
.a-steps--pad .a-step__num { width: 38px; height: 38px; font-size: 16px; align-self: center; margin-top: 0; }
.a-steps--pad .a-step strong { font-size: 17.5px; }
@media (max-width: 1100px) { .a-hero--packages .a-hero__art img { max-height: 300px; } }
.a-pkcard__top > div:first-child { margin-right: -24px; }
.a-pkcard__art img { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 30%); mask-image: linear-gradient(90deg, transparent 0, #000 30%); }
.a-benefits--card:not(.a-benefits--five) { background: linear-gradient(180deg, #fff, #fff9f4); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(26px * var(--a-rf)); box-shadow: 0 10px 26px rgba(80, 40, 0, .06); padding: 14px 10px; }
.a-benefits--card:not(.a-benefits--five) .a-benefit__icon svg { width: 44px; height: 44px; }
.a-benefits--card:not(.a-benefits--five) .a-benefit strong { font-size: 17px; letter-spacing: -0.02em; }
.a-benefits--card:not(.a-benefits--five) .a-benefit small { font-size: 14px; line-height: 1.3; color: #1c2438; font-weight: 500; }
@media (max-width: 720px) {
  .a-news--card { grid-template-columns: 1fr; padding: 22px; }
  .a-news--card .a-news__field { flex: 0 0 auto; width: 100%; }
  .a-news--card .a-news__copy h2 { font-size: 20px; }
}
@media (max-width: 1100px) { .a-cta, .a-cta--inline { padding: 24px 22px; } .a-banner { padding: 26px 22px 150px; } }

/* ===== v2.2.2 — Noutăți 1:1 ===== */
.a-hero--news { background: radial-gradient(720px 380px at 74% 36%, rgba(255, 190, 130, .45), transparent 70%), linear-gradient(100deg, #fbf4f2 0%, #fcf1ec 50%, #fbe9dc 100%); }
@media (min-width: 1101px) {
  .a-hero--news .a-hero__grid { position: static; display: block; min-height: min(327px, 22.7vw); padding: 12px 24px 0 27px; }
  .a-hero--news .a-crumbs { margin: 0; padding: 0; }
  .a-hero--news .a-crumbs ol { font-size: 14.5px; font-weight: 600; }
  .a-hero--news .a-crumbs svg { width: 18px; height: 18px; }
  .a-hero--news .a-kicker { margin: 20px 0 8px; font-size: 15px; letter-spacing: .1em; }
  .a-hero--news .a-kicker i { width: 42px; height: 3px; }
  .a-hero--news .a-hero__title { font-size: clamp(30px, 3.05vw, 44px); line-height: 1.0; letter-spacing: -0.035em; }
  .a-hero--news .a-hero__text { margin-top: 10px; max-width: 640px; font-size: clamp(15px, 1.28vw, 18.4px); line-height: 1.26; font-weight: 500; color: #1c2438; }
  .a-hero--news .a-hero__actions { margin-top: 16px; }
  .a-hero--news .a-hero__art { position: absolute; right: 0; top: 0; bottom: auto; width: min(756px, 52.5vw); display: block; z-index: 1; pointer-events: none; }
  .a-hero--news .a-hero__art img { position: static; width: 100%; height: auto; max-height: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%); mask-image: linear-gradient(90deg, transparent 0, #000 7%); }
}
.a-hero--news .a-hero__grid { padding-bottom: 0; }
.a-hero--news .a-hero__actions .a-btn { min-height: 42px; font-size: 15.5px; font-weight: 800; }
.a-hero--news .a-btn--primary::after { content: ""; flex: none; width: 17px; height: 17px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
.a-hero--news + .a-section { padding-top: 3px; }

/* articol recomandat */
.a-feature { grid-template-columns: minmax(0, .478fr) minmax(0, .522fr); min-height: 244px; border: 1px solid rgba(238, 220, 204, .7); border-radius: calc(24px * var(--a-rf)); background: linear-gradient(100deg, #fff8f2 0%, #fff3e8 55%, #fdeadb 100%); box-shadow: 0 12px 30px rgba(80, 40, 0, .08); }
.a-feature__media { position: relative; min-height: 244px; }
.a-feature__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left center; -webkit-mask-image: linear-gradient(90deg, #000 74%, transparent 100%); mask-image: linear-gradient(90deg, #000 74%, transparent 100%); }
.a-feature__body { padding: 18px 40px 18px 14px; gap: 10px; }
.a-feature__body .a-label { padding: 6px 14px; font-size: 13.5px; letter-spacing: .04em; }
.a-feature__body h2 { font-size: clamp(26px, 2.65vw, 38px); line-height: 1.04; letter-spacing: -0.03em; }
.a-feature__body p { font-size: clamp(14.5px, 1.2vw, 17px); line-height: 1.28; color: #1c2438; font-weight: 500; max-width: none; }
.a-feature__body .a-btn { margin-top: 4px; min-height: 42px; padding: 0 28px; font-size: 16px; font-weight: 800; }

/* Explorează noutățile */
#noutati-lista { padding-top: 14px; padding-bottom: 6px; }
#noutati-lista .a-sechead--filters { margin-bottom: 22px; }
#noutati-lista .a-sechead__title, #ghiduri .a-sechead__title { gap: 22px; }
#noutati-lista .a-dash, #ghiduri .a-dash, #resurse-utile .a-dash { width: 48px; height: 2.5px; }
.a-sechead--filters .a-pills { gap: 10px; }
.a-sechead--filters .a-pill { min-height: 36px; padding: 0 18px; font-size: 14px; font-weight: 600; color: #1c2438; }
.a-sechead--filters .a-pill.is-active { font-weight: 700; color: #fff; }
.a-grid--3.a-grid--news, .a-grid--news { gap: 18px 15px; }
.a-grid--news .a-acard { border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); background: linear-gradient(180deg, #fff 0%, #fff7f0 100%); box-shadow: 0 10px 26px rgba(80, 40, 0, .08); }
.a-grid--news .a-acard__media { aspect-ratio: 440 / 146; background: #fdf1e6; }
.a-grid--news .a-acard__media img { -webkit-mask-image: linear-gradient(180deg, #000 82%, transparent 100%); mask-image: linear-gradient(180deg, #000 82%, transparent 100%); }
.a-grid--news .a-chip { left: 26px; top: 12px; min-height: 38px; padding: 0 16px 0 14px; gap: 10px; border-radius: 14px; font-size: 14.5px; font-weight: 700; letter-spacing: -0.01em; box-shadow: 0 6px 16px rgba(80, 40, 0, .1); }
.a-grid--news .a-chip svg { width: 22px; height: 22px; stroke-width: 1.8; }
.a-grid--news .a-acard__body { padding: 6px clamp(18px, 1.95vw, 28px) 12px; gap: 5px; }
.a-grid--news .a-acard__body h3 { font-size: clamp(17px, 1.53vw, 22px); line-height: 1.13; letter-spacing: -0.03em; font-weight: 800; }
.a-grid--news .a-acard__body p { font-size: 14px; line-height: 1.25; color: #1c2438; font-weight: 500; }
.a-grid--news .a-acard__body .a-textlink { margin-top: auto; padding-top: 6px; font-size: 18px; font-weight: 800; letter-spacing: -0.02em; }
.a-grid--news .a-textlink svg { width: 22px; height: 22px; }
.a-pager { gap: 6px; margin: 16px 0 0; }
.a-pager .page-numbers { min-width: 38px; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; font-size: 15.5px; font-weight: 600; background: linear-gradient(180deg, #fff, #fff8f3); box-shadow: 0 4px 12px rgba(80, 40, 0, .1); }
.a-pager .page-numbers.current { font-weight: 800; box-shadow: 0 8px 16px rgba(242, 100, 10, .32); }
.a-pager .page-numbers.dots { width: auto; min-width: 30px; background: transparent; box-shadow: none; }
.a-pager .page-numbers:is(.prev, .next) svg { width: 18px; height: 18px; }

/* Ghiduri pentru proiecte mai bune */
#ghiduri { padding-top: 6px; padding-bottom: 0; }
#ghiduri .a-sechead { margin-bottom: 6px; }
#ghiduri .a-sechead__title { font-size: clamp(24px, 2.2vw, 31px); }
#ghiduri .a-strip { padding: 8px 6px; background: linear-gradient(180deg, #fff 0%, #fff8f2 100%); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); box-shadow: 0 10px 26px rgba(80, 40, 0, .07); }
#ghiduri .a-strip__item { padding: 2px 26px; gap: 18px; }
#ghiduri .a-strip__item + .a-strip__item::before { top: 6%; bottom: 6%; background: rgba(23, 23, 26, .22); }
#ghiduri .a-strip__icon { width: 52px; height: 52px; }
#ghiduri .a-strip__icon svg { width: 48px; height: 48px; stroke-width: 1.4; }
#ghiduri .a-strip__item strong { font-size: 20px; font-weight: 800; letter-spacing: -0.02em; }
#ghiduri .a-strip__item small { margin-top: 2px; max-width: 268px; font-size: 14.5px; line-height: 1.22; color: #1c2438; font-weight: 500; }

/* Resurse utile + FAQ + newsletter */
#resurse-utile { padding-top: 14px; padding-bottom: 0; }
#resurse-utile .a-split__col .a-dash { margin-top: 15px; }
#news-cta { padding-top: 18px; padding-bottom: 10px; }
#resurse-utile .a-split { grid-template-columns: minmax(0, .385fr) minmax(0, .615fr); gap: 0 68px; }
#resurse-utile .a-split__col:first-child { position: relative; }
#resurse-utile .a-split__col:first-child::after { content: ""; position: absolute; top: 4px; bottom: 4px; right: -43px; width: 1px; background: rgba(23, 23, 26, .18); }
#resurse-utile .a-split__col > .a-sechead { margin-bottom: 10px; }
#resurse-utile .a-sechead__title { font-size: 29.5px; line-height: 1.08; gap: 22px; letter-spacing: -0.03em; }
#resurse-utile .a-sechead__title em { font-size: 31.5px; }
#resurse-utile .a-sechead__text { margin-top: 8px; padding-left: 70px; font-size: 15.5px; line-height: 1.2; color: #1c2438; font-weight: 500; }
.a-linklist { gap: 4px; }
.a-linkrow { min-height: 48px; padding: 5px 22px 5px 26px; gap: 22px; border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(14px * var(--a-rf)); background: linear-gradient(100deg, #fff, #fff8f2); box-shadow: 0 5px 14px rgba(80, 40, 0, .07); }
.a-linkrow > svg { width: 38px; height: 38px; stroke-width: 1.45; }
.a-linkrow strong { font-size: 17px; font-weight: 800; letter-spacing: -0.02em; line-height: 1.15; }
.a-linkrow small { font-size: 13.5px; line-height: 1.2; color: #1c2438; font-weight: 500; }
.a-linkrow i { width: 26px; height: 26px; }
.a-linkrow i svg { width: 12px; height: 12px; }
#resurse-utile .a-faq--stack { gap: 8px; margin-bottom: 20px; }
#resurse-utile .a-faq__eyebrow { margin-bottom: 2px; font-size: 14px; letter-spacing: .06em; }
#resurse-utile .a-faq__eyebrow i { width: 40px; }
#resurse-utile .a-faq__head h2 { font-size: clamp(26px, 2.1vw, 30px); letter-spacing: -0.03em; font-style: italic; }
#resurse-utile .a-faq__head h2 em { display: inline; }
#resurse-utile .a-faq--dark .a-faq__list { gap: 9px; }
#resurse-utile .a-faq--dark .a-faq__item summary { min-height: 33px; padding: 3px 14px 3px 30px; font-size: 16.5px; font-weight: 700; letter-spacing: -0.01em; }
#resurse-utile .a-faq--dark .a-faq__item summary i { width: 24px; height: 24px; }
.a-news--compact { grid-template-columns: auto minmax(0, 1fr) auto; gap: 0 14px; padding: 10px 14px 10px 20px; min-height: 75px; border-radius: calc(20px * var(--a-rf)); background: linear-gradient(100deg, #fff, #fff8f2); border: 1px solid rgba(238, 220, 204, .6); box-shadow: 0 8px 22px rgba(80, 40, 0, .07); }
.a-news--compact .a-news__icon { width: 40px; height: 40px; }
.a-news--compact .a-news__icon svg { width: 40px; height: 40px; }
.a-news--compact .a-news__copy h2 { font-size: 18px; font-style: normal; letter-spacing: -0.02em; }
.a-news--compact .a-news__copy p { max-width: 380px; margin-top: 1px; font-size: 12.7px; line-height: 1.2; color: #1c2438; font-weight: 500; }
.a-news--compact .a-news__form { display: flex; align-items: center; gap: 4px; flex: none; }
.a-news--compact .a-news__field { flex: 0 0 190px; width: 190px; }
.a-news--compact .a-news__field input { font-size: 12px; }
.a-news--compact .a-news__field input { height: 38px; font-size: 12.5px; }
.a-news--compact .a-btn { min-height: 38px; padding: 0 18px; font-size: 14.5px; font-weight: 800; }
@media (max-width: 1280px) {
  .a-news--compact { grid-template-columns: auto minmax(0, 1fr); }
  .a-news--compact .a-news__form { grid-column: 1 / -1; padding-top: 10px; }
  .a-news--compact .a-news__field { flex: 1 1 auto; width: auto; }
}
@media (max-width: 1280px) { .a-grid--news .a-acard__body h3 br { display: none; } }
@media (max-width: 1100px) {
  #resurse-utile .a-split { grid-template-columns: 1fr; gap: 28px; }
  #resurse-utile .a-split__col:first-child::after { display: none; }
  #resurse-utile .a-sechead__text { padding-left: 0; }
  .a-feature { grid-template-columns: 1fr; min-height: 0; }
  .a-feature__media { min-height: 200px; }
  .a-feature__media img { -webkit-mask-image: none; mask-image: none; }
  .a-feature__body { padding: 22px; }
  .a-feature__body p br, .a-feature__body h2 br, #resurse-utile .a-sechead__text br { display: none; }
  .a-hero--news .a-hero__art img { max-height: 300px; }
  #ghiduri .a-strip__item { padding: 4px 20px; }
}
@media (max-width: 720px) {
  .a-grid--news .a-acard__body h3 br { display: none; }
  #resurse-utile .a-sechead__title { font-size: 24px; gap: 16px; }
  #resurse-utile .a-sechead__title em { font-size: 25px; }
  #resurse-utile .a-split__col .a-dash { margin-top: 12px; width: 36px; }
  #noutati-lista .a-sechead__title, #ghiduri .a-sechead__title { gap: 14px; }
  .a-grid--news .a-acard__body { padding: 10px 22px 16px; }
  .a-news--compact { padding: 16px; }
  .a-news--compact .a-news__form { flex-direction: column; align-items: stretch; }
  .a-news--compact .a-news__field { flex: 0 0 auto; width: 100%; }
}

/* ===== v2.2.2 — Contact 1:1 ===== */
.a-hero--contact { background: radial-gradient(760px 420px at 70% 40%, rgba(255, 190, 130, .4), transparent 70%), linear-gradient(100deg, #fbf6f3 0%, #fcf1ec 55%, #fbe9dc 100%); }
@media (min-width: 1101px) {
  .a-hero--contact .a-hero__grid { position: static; display: block; min-height: min(467px, 32.4vw); padding: 14px 24px 0 4px; }
  .a-hero--contact .a-crumbs { margin: 0; padding: 0; }
  .a-hero--contact .a-crumbs ol { font-size: 15px; font-weight: 600; }
  .a-hero--contact .a-crumbs svg { width: 19px; height: 19px; }
  .a-hero--contact .a-kicker { margin: 22px 0 8px; font-size: 15px; letter-spacing: .1em; }
  .a-hero--contact .a-kicker i { width: 46px; height: 3px; }
  .a-hero--contact .a-hero__title { font-size: clamp(30px, 3.28vw, 47px); line-height: 1.02; letter-spacing: -0.035em; }
  .a-hero--contact .a-hero__text { margin-top: 12px; max-width: 540px; font-size: clamp(14.5px, 1.2vw, 17.5px); line-height: 1.32; font-weight: 500; color: #1c2438; }
  .a-hero--contact .a-hero__actions { margin-top: 18px; }
  .a-hero--contact .a-hero__art { position: absolute; right: 0; top: 0; bottom: auto; width: min(852px, 59.2vw); display: block; z-index: 1; pointer-events: none; }
  .a-hero--contact .a-hero__art img { position: static; width: 100%; height: auto; max-height: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%); mask-image: linear-gradient(90deg, transparent 0, #000 6%); }
  .a-hero--contact + .a-hero-strip { margin-top: 0; margin-bottom: 0; }
}
.a-hero--contact .a-hero__grid { padding-bottom: 0; }
.a-hero--contact .a-hero__actions .a-btn { min-height: 46px; padding: 0 34px; font-size: 16.5px; font-weight: 800; }

.a-infocards { background: linear-gradient(180deg, #fff 0%, #fff8f3 100%); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); box-shadow: 0 12px 30px rgba(80, 40, 0, .08); padding: 20px 0 16px; }
.a-infocard { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0 14px; align-items: start; align-content: start; padding: 2px 22px 2px 24px; }
.a-infocard + .a-infocard::before { top: 2%; bottom: 2%; background: rgba(23, 23, 26, .2); }
.a-infocard > div { display: contents; }
.a-infocard__icon { grid-column: 1; grid-row: 1 / span 2; align-self: center; }
.a-infocard__icon svg { width: 52px; height: 52px; stroke-width: 1.35; }
.a-infocard strong { grid-column: 2; grid-row: 1; align-self: end; font-size: 20px; letter-spacing: -0.02em; line-height: 31px; }
.a-infocard a, .a-infocard__value { grid-column: 2; grid-row: 2; align-self: start; margin-top: 0; font-size: 15.5px; font-weight: 800; letter-spacing: -0.02em; line-height: 31px; }
.a-infocard small { grid-column: 1 / -1; grid-row: 3; margin-top: 8px; max-width: 290px; font-size: 14.5px; line-height: 1.28; color: #1c2438; font-weight: 500; }

#formular-contact { padding-top: 30px; padding-bottom: 8px; }
.a-contactgrid { grid-template-columns: minmax(0, .37fr) minmax(0, .63fr); gap: 21px; }
.a-contactgrid__intro { padding-top: 12px; }
.a-contactgrid__intro h2 { font-size: 36px; line-height: 1.03; gap: 18px; letter-spacing: -0.035em; }
.a-contactgrid__intro h2 .a-dash { width: 50px; height: 2.5px; margin-top: .55em; }
.a-contactgrid__intro h2 em { font-size: 38px; }
.a-contactgrid__intro > p { margin: 14px 0 16px; max-width: 470px; font-size: 16px; line-height: 1.32; color: #1c2438; font-weight: 500; }
.a-checkcard { padding: 14px 22px 16px; border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(20px * var(--a-rf)); background: linear-gradient(180deg, #fff 0%, #fff7f1 100%); box-shadow: 0 8px 22px rgba(80, 40, 0, .06); }
.a-checkcard > strong { margin-bottom: 8px; font-size: 21px; font-weight: 800; letter-spacing: -0.03em; }
.a-checkcard .a-checklist { gap: 0; }
.a-checkcard .a-checklist li { padding: 5px 0; font-size: 15.5px; line-height: 1.36; color: #1c2438; font-weight: 500; }
.a-checkcard .a-checklist svg { color: var(--a-orange); width: 22px; height: 22px; stroke-width: 2.6; }
.a-form { background: linear-gradient(180deg, #fff 0%, #fdfaf8 100%); border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(22px * var(--a-rf)); box-shadow: 0 12px 30px rgba(80, 40, 0, .08); padding: 24px 24px 20px; gap: 14px; }
.a-form__grid { gap: 15px 29px; }
.a-field { gap: 8px; }
.a-field label { font-size: 16.5px; font-weight: 800; letter-spacing: -0.01em; }
.a-field label small { font-size: inherit; color: #1c2438; }
.a-input input, .a-input select, .a-input textarea { min-height: 40px; padding: 0 14px 0 54px; border: 1.5px solid #dcd7d3; border-radius: 10px; background: #f7f6f5; color: #2b2b31; font-size: 14.5px; font-weight: 500; }
.a-input > svg:first-child { left: 16px; width: 20px; height: 20px; color: #3a3a40; }
.a-input input::placeholder, .a-input textarea::placeholder { color: #4a4a52; opacity: 1; }
.a-input textarea { min-height: 104px; padding: 11px 14px 11px 54px; }
.a-input--area > svg:first-child { top: 12px; }
.a-input select { color: #4a4a52; padding-right: 44px; }
.a-input select:valid { color: #2b2b31; }
.a-consent { font-size: 14.5px; color: #1c2438; font-weight: 500; }
.a-consent a { color: var(--a-orange); font-weight: 600; }
.a-form .a-btn--block { min-height: 50px; font-size: 20px; font-weight: 800; gap: 12px; }
.a-form .a-btn--block svg { width: 24px; height: 24px; }

.a-sec-help, .a-sec-why { padding-top: 14px; padding-bottom: 6px; }
.a-sec-help .a-sechead__title, .a-sec-why .a-sechead__title { font-size: clamp(26px, 2.3vw, 33px); gap: 20px; }
.a-sec-help .a-dash, .a-sec-why .a-dash { width: 50px; height: 2.5px; }
.a-sec-help .a-sechead, .a-sec-why .a-sechead { margin-bottom: 14px; }
.a-helpgrid { gap: 16px; }
.a-help { border: 1px solid rgba(238, 220, 204, .6); border-radius: calc(20px * var(--a-rf)); background: linear-gradient(180deg, #fff 0%, #fff8f3 100%); box-shadow: 0 10px 24px rgba(80, 40, 0, .08); }
.a-help__art { aspect-ratio: 323 / 122; }
.a-help__art img { -webkit-mask-image: linear-gradient(180deg, #000 78%, transparent 100%); mask-image: linear-gradient(180deg, #000 78%, transparent 100%); }
.a-help__body { gap: 4px; padding: 4px 20px 16px; }
.a-help__body strong { font-size: clamp(17px, 1.4vw, 20px); letter-spacing: -0.03em; line-height: 1.1; }
.a-help__body small { padding-right: 24px; font-size: 14px; line-height: 1.28; color: #1c2438; font-weight: 500; }
.a-help__go { right: 16px; bottom: 14px; width: 26px; height: 26px; }
.a-help__go svg { width: 12px; height: 12px; }

.a-benefits--plain { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 4px 0 !important; }
.a-benefits--plain .a-benefit__icon svg { width: 48px; height: 48px; stroke-width: 1.35; }
.a-benefits--plain .a-benefit strong { font-size: 18px; font-weight: 800; letter-spacing: -0.03em; }
.a-benefits--plain .a-benefit small { font-size: 14px; line-height: 1.28; color: #1c2438; font-weight: 500; }

#faq-contact { padding-top: 12px; padding-bottom: 0; }
#faq-contact .a-faq--card { grid-template-columns: minmax(0, 430px) minmax(0, 1fr); gap: 0 47px; align-items: center; padding: 18px 24px 18px 2px; background: linear-gradient(180deg, #fff 0%, #fff8f4 100%); border: 1px solid rgba(238, 220, 204, .55); border-radius: calc(22px * var(--a-rf)); box-shadow: 0 10px 26px rgba(80, 40, 0, .06); }
#faq-contact .a-faq__head h2 { display: block; font-size: 36px; font-style: normal; letter-spacing: -0.035em; line-height: 1.05; }
#faq-contact .a-faq__head h2::before { content: ""; display: inline-block; vertical-align: middle; margin: -4px 20px 0 0; width: 50px; height: 2.5px; border-radius: 3px; background: var(--a-grad-h); }
#faq-contact .a-faq__head h2 em { display: inline; }
#faq-contact .a-faq__head p:not(.a-faq__eyebrow) { margin: 8px 0 0 50px; max-width: 320px; font-size: 15px; line-height: 1.26; color: #1c2438; font-weight: 500; }
#faq-contact .a-faq__head .a-btn { margin: 12px 0 0 48px; min-height: 36px; padding: 0 20px; border: 1.5px solid var(--a-orange); background: #fff; color: var(--a-orange); font-size: 15px; font-weight: 800; }
#faq-contact .a-faq--dark .a-faq__list { gap: 10px; }
#faq-contact .a-faq--dark .a-faq__item summary { min-height: 35px; padding: 3px 14px 3px 28px; font-size: 17.5px; font-weight: 700; letter-spacing: -0.01em; }
#faq-contact .a-faq--dark .a-faq__item summary i { width: 26px; height: 26px; }

.a-news--contact { grid-template-columns: auto minmax(0, 1fr) 640px; gap: 0 22px; padding: 14px 32px 14px 36px; min-height: 92px; border-radius: calc(24px * var(--a-rf)); background: linear-gradient(100deg, #fff, #fff8f2); border: 1px solid rgba(238, 220, 204, .6); box-shadow: 0 8px 22px rgba(80, 40, 0, .07); }
.a-news--contact .a-news__icon { width: 58px; height: 58px; }
.a-news--contact .a-news__icon svg { width: 58px; height: 58px; }
.a-news--contact .a-news__copy h2 { font-size: 25px; letter-spacing: -0.03em; }
.a-news--contact .a-news__copy p { margin-top: 2px; font-size: 14.5px; line-height: 1.25; color: #1c2438; font-weight: 500; }
.a-news--contact .a-news__form { display: flex; align-items: center; gap: 14px; padding-left: 48px; border-left: 2px solid var(--a-orange); }
.a-news--contact .a-news__field { flex: 1 1 auto; width: auto; }
.a-news--contact .a-news__field input { height: 40px; font-size: 16px; }
.a-news--contact .a-btn { flex: none; min-height: 40px; padding: 0 26px; font-size: 17px; font-weight: 800; }
#faq-contact + .a-container { padding-top: 16px; padding-bottom: 8px; }

@media (max-width: 1280px) {
  .a-news--contact { grid-template-columns: auto minmax(0, 1fr); gap: 12px 18px; }
  .a-news--contact .a-news__form { grid-column: 1 / -1; padding-left: 0; border-left: 0; }
}
@media (max-width: 1100px) {
  .a-contactgrid { grid-template-columns: 1fr; }
  .a-contactgrid__intro > p { max-width: none; }
  .a-hero--contact .a-hero__art img { max-height: 300px; }
  #faq-contact .a-faq--card { grid-template-columns: 1fr; gap: 18px; padding: 20px; }
  #faq-contact .a-faq__head p:not(.a-faq__eyebrow), #faq-contact .a-faq__head .a-btn { margin-left: 0; }
  #faq-contact .a-faq__head h2 { font-size: 28px; }
  .a-contactgrid__intro h2 { font-size: 30px; }
  .a-contactgrid__intro h2 em { font-size: 31px; }
}
@media (max-width: 720px) {
  .a-hero--contact .a-hero__title br { display: none; }
  .a-news--contact { padding: 18px; }
  .a-news--contact .a-news__form { flex-direction: column; align-items: stretch; }
  .a-form { padding: 18px; }
  .a-form .a-btn--block { font-size: 17px; }
}
@media (max-width: 1100px) { .a-news__copy p br, .a-cta p br { display: none; } }

/* ==========================================================================
   v5.0.0 — compact hero for inner pages (cart, checkout, account, archives,
   search, plain pages). Same look as the Produse hero, shorter.
   ========================================================================== */
.a-hero--page .a-hero__grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); min-height: 300px; padding-top: 10px; padding-bottom: 30px; }
.a-hero--page .a-hero__title { font-size: clamp(32px, 3.7vw, 50px); }
.a-hero--page .a-hero__text { max-width: 580px; margin-top: 12px; font-size: 16.5px; line-height: 1.5; color: var(--a-ink); }
.a-hero--page .a-hero__inline { margin-top: 20px; }
.a-hero--page .a-hero__art img { max-height: 290px; }
@media (max-width: 1100px) {
  .a-hero--page .a-hero__inline li { padding-right: 22px; margin-right: 22px; font-size: 14.5px; }
}
@media (max-width: 900px) {
  /* no big banner on phones: forms and carts stay above the fold */
  .a-hero--page .a-hero__art { display: none; }
  .a-hero--page .a-hero__grid { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-bottom: 22px; }
  .a-hero--page .a-hero__title { font-size: clamp(28px, 7.4vw, 36px); }
  .a-hero--page .a-hero__text { font-size: 15px; }
  .a-hero--page .a-hero__inline { margin-top: 16px; }
}
@media (max-width: 560px) {
  .a-hero--page .a-hero__inline { flex-wrap: nowrap; }
  .a-hero--page .a-hero__inline li { flex: 1 1 0; min-width: 0; padding-right: 8px; margin-right: 8px; font-size: 11.5px; gap: 6px; }
  .a-hero--page .a-hero__inline svg { width: 22px; height: 22px; flex: none; }
}

/* =========================================================================
   v5.0.0 — ONE hero for the whole site: every page uses the Shop (Magazin) hero.
   Same soft background that melts into the page, same image frame (right edge
   at the container + 46px, rounded top-right corner, faded left/bottom), same
   crumbs / kicker / title / text rhythm. The per-page hero variants above are
   kept only as fallbacks; this block is intentionally more specific so it wins
   over them and over the Elementor-page copy of those rules (ae-theme.css).
   ========================================================================= */
html body.allma-theme.allma-theme .a-hero {
  padding-top: 10px; padding-bottom: 10px;
  background: radial-gradient(900px 440px at 78% 30%, var(--a-glow), transparent 70%), radial-gradient(700px 360px at 0% 0%, var(--a-glow-2), transparent 70%), linear-gradient(180deg, var(--a-hero-1) 0%, var(--a-hero-2) 70%, var(--a-bg) 100%);
}
@media (min-width: 1025px) {
  html body.allma-theme.allma-theme .a-hero .a-hero__grid { position: relative; display: block; grid-template-columns: none; min-height: min(372px, 25.8vw); padding: 22px 24px 28px 32px; }
  html body.allma-theme.allma-theme .a-hero--home .a-hero__grid { padding-bottom: 44px; }
  html body.allma-theme.allma-theme .a-hero .a-hero__copy { position: relative; z-index: 2; padding: 0; max-width: min(640px, 47vw); }
  html body.allma-theme.allma-theme .a-hero .a-crumbs { margin: 0; padding: 0; }
  html body.allma-theme.allma-theme .a-hero .a-crumbs ol { font-size: 14px; font-weight: 500; }
  html body.allma-theme.allma-theme .a-hero .a-crumbs svg { width: 15px; height: 15px; }
  html body.allma-theme.allma-theme .a-hero .a-kicker { margin: 31px 0 12px; font-size: 12.5px; letter-spacing: .14em; }
  html body.allma-theme.allma-theme .a-hero .a-kicker i { width: 38px; height: 2px; }
  html body.allma-theme.allma-theme .a-hero .a-hero__title { font-size: clamp(32px, 3.3vw, 47px); line-height: 1.06; letter-spacing: -0.035em; }
  html body.allma-theme.allma-theme .a-hero .a-hero__text { margin-top: 10px; max-width: min(562px, 39vw); font-size: clamp(15px, 1.285vw, 18.5px); line-height: 1.22; font-weight: 400; color: var(--a-ink); }
  html body.allma-theme.allma-theme .a-hero:not(.a-hero--shop) .a-hero__text br { display: none; }
  html body.allma-theme.allma-theme .a-hero .a-hero__actions { margin-top: 22px; }
  html body.allma-theme.allma-theme .a-hero .a-hero__inline { margin-top: 20px; flex-wrap: nowrap; }
  html body.allma-theme.allma-theme .a-hero .a-hero__art { position: absolute; right: -46px; top: 0; bottom: auto; left: auto; padding: 0; width: min(779px, 54.1vw); display: block; align-self: auto; z-index: 1; pointer-events: none; }
  html body.allma-theme.allma-theme .a-hero .a-hero__art img {
    position: static; width: 100%; height: auto; max-width: none; max-height: none; aspect-ratio: 2.12 / 1; object-fit: cover; object-position: center; mix-blend-mode: normal;
    border-top-right-radius: calc(36px * var(--a-rf));
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 13%, #000 100%), linear-gradient(180deg, #000 0, #000 88%, transparent 100%); -webkit-mask-composite: source-in;
    mask-image: linear-gradient(90deg, transparent 0, #000 13%, #000 100%), linear-gradient(180deg, #000 0, #000 88%, transparent 100%); mask-composite: intersect;
  }
}

/* =========================================================================
   v5.0.0 — Footer aerisit (spațiu între secțiuni, coloane și linkuri)
   Specificitate mai mare decât main.css / builder.css; varianta „compact” din Builder rămâne neatinsă.
   ========================================================================= */
html body:not(.allma-fv-compact) .a-footer { margin-top: 64px; }
html body:not(.allma-fv-compact) .a-footer .a-footer__grid { padding-top: 60px; padding-bottom: 44px; column-gap: 24px; }
html body .a-footer .a-footer__brand p { margin: 20px 0 22px; font-size: 14px; line-height: 1.65; max-width: 290px; }
html body .a-footer .a-social { gap: 14px; }
html body .a-footer h3 { margin: 0 0 20px; font-size: 16px; }
html body .a-footer .a-footer__col li { margin: 0 0 12px; line-height: 22px; }
html body .a-footer .a-footer__col li:last-child { margin-bottom: 0; }
html body .a-footer .a-footer__contact li { gap: 12px; margin-bottom: 14px; align-items: flex-start; }
html body .a-footer .a-footer__contact svg { flex: none; margin-top: 2px; }
html body .a-footer .a-footer__bar { padding-top: 22px; padding-bottom: 14px; row-gap: 12px; }
html body .a-footer .a-footer__extra { padding-top: 0; padding-bottom: 30px; row-gap: 12px; }
@media (min-width: 1181px) {
  html body .a-footer .a-footer__contact li span { white-space: nowrap; }
}
@media (max-width: 1180px) {
  html body:not(.allma-fv-compact) .a-footer .a-footer__grid { padding-top: 52px; padding-bottom: 36px; column-gap: 32px; row-gap: 34px; }
  html body .a-footer .a-footer__contact li { margin-bottom: 0; }
}
@media (max-width: 1024px) {
  html body:not(.allma-fv-compact) .a-footer { margin-top: 48px; }
  html body:not(.allma-fv-compact) .a-footer .a-footer__grid { padding-top: 44px; padding-bottom: 28px; row-gap: 32px; column-gap: 28px; }
}
@media (max-width: 640px) {
  html body:not(.allma-fv-compact) .a-footer { margin-top: 36px; }
  html body:not(.allma-fv-compact) .a-footer .a-footer__grid { padding-top: 36px; padding-bottom: 20px; row-gap: 30px; }
  html body .a-footer h3 { margin-bottom: 14px; }
  html body .a-footer .a-footer__col li { margin-bottom: 10px; }
  html body .a-footer .a-footer__contact ul { display: grid; gap: 12px; }
  html body .a-footer .a-footer__bar { padding-top: 18px; padding-bottom: 12px; }
  html body .a-footer .a-footer__extra { padding-bottom: 84px; } /* lasă loc butonului plutitor de cookies */
}


/* r14 — butoane doar-icoană (favorite / coș pe carduri): textul rămâne pentru cititoare de ecran */
html body.ae-page .a-pcard__cart .elementor-button-content-wrapper,
html body.ae-page .a-pcard__fav .elementor-button-content-wrapper {
  display: block; position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0;
}

/* r15 — variabilele tipografice din kit-ul Elementor folosesc fontul local Inter
   (fără Roboto remote → fără schimb de font la încărcare) */
html body.allma-theme {
  --e-global-typography-primary-font-family: "Inter", "Inter Fallback";
  --e-global-typography-secondary-font-family: "Inter", "Inter Fallback";
  --e-global-typography-text-font-family: "Inter", "Inter Fallback";
  --e-global-typography-accent-font-family: "Inter", "Inter Fallback";
}
/* r17 — paginile Allma Elementor Pages setează --a-font în plugin (body.ae-page); aici adăugăm rezerva cu metrici potriviți */
html body.ae-page { --a-font: "Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }

/* r15 — secțiunile de sub pliu nu mai sunt stilate/așezate până nu se apropie de ecran
   (reduce recalcularea stilurilor și layout-ul inițial; dimensiunea rezervată evită salturi) */
html body.ae-page .elementor > .e-con:nth-child(n+3) {
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
  overflow-clip-margin: 90px; /* umbrele/strălucirile cardurilor nu sunt tăiate de containment */
}
html body.allma-theme .a-footer {
  content-visibility: auto;
  contain-intrinsic-size: auto 560px;
  overflow-clip-margin: 90px;
}
