/* ═══ MALL: Atelier (atelier) ═══ Genererad via design-workflow.
   Inre-sid-CSS-lager (omformar delade komponenter) + animationer. Scopat [data-template="atelier"].
   Video-hero: ja. */

html[data-template="atelier"]{--bg:#F4F1EA;--bg-soft:#EBE7DD;--ink:#15130F;--ink-2:#403B33;--muted:#76705F;--line:rgba(21,19,15,0.16);--line-2:rgba(21,19,15,0.28);--radius:0px;--radius-lg:2px;--radius-sm:0px;--ff-heading:var(--next-font-fraunces),Georgia,"Times New Roman",serif;--star:#15130F}
html[data-template="atelier"]{--btn-radius:0px;--btn-pad:16px 30px;--btn-weight:500;--btn-transform:uppercase;--btn-tracking:.16em}
[data-template="atelier"] body{background:var(--bg);color:var(--ink-2)}
[data-template="atelier"] h1,[data-template="atelier"] h2,[data-template="atelier"] h3,[data-template="atelier"] h4{font-family:var(--ff-heading);font-weight:500;letter-spacing:-.02em;color:var(--ink)}
[data-template="atelier"] .eyebrow,[data-template="atelier"] .section-head .eyebrow{background:none;border:0;padding:0;color:var(--ink);font-weight:600;font-family:var(--ff-body);letter-spacing:.18em;text-transform:uppercase;font-size:11.5px;border-radius:0}
[data-template="atelier"] .eyebrow::before{content:"";display:inline-block;width:28px;height:1px;background:var(--brand);margin-right:12px;vertical-align:middle}
[data-template="atelier"] .section{border-top:1px solid var(--line)}
[data-template="atelier"] .section:nth-child(even){background:var(--bg-soft)}
[data-template="atelier"] .section-head{text-align:left;margin-left:0;margin-right:auto;max-width:780px}
[data-template="atelier"] .section-head h2{letter-spacing:-.03em;line-height:1.02}
[data-template="atelier"] .subhero{padding:150px 0 56px;border-bottom:1px solid var(--line)}
[data-template="atelier"] .subhero h1{font-weight:500;letter-spacing:-.03em;line-height:.98;color:var(--ink);max-width:900px}
[data-template="atelier"] .subhero__lead{color:var(--ink-2);max-width:560px}
[data-template="atelier"] .subhero__crumbs{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:11.5px}
[data-template="atelier"] .subhero__crumbs a:hover{color:var(--brand)}
[data-template="atelier"] .subhero__crumbs span{color:var(--line-2)}
[data-template="atelier"] .subhero__answer{background:none;border:0;border-left:2px solid var(--brand);border-radius:0;box-shadow:none;padding:6px 0 6px 26px}
[data-template="atelier"] .subhero__answer-label{color:var(--brand);letter-spacing:.16em}
[data-template="atelier"] .subhero__answer p{color:var(--ink-2)}
[data-template="atelier"] .card{background:transparent;border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none;padding:24px 0 0}
[data-template="atelier"] .card:hover{transform:none;border-color:var(--ink);box-shadow:none}
[data-template="atelier"] .card::after{display:none}
[data-template="atelier"] .card:hover .card__image img{transform:scale(1.03)}
[data-template="atelier"] .card__icon{background:none;border:0;border-radius:0;color:var(--brand);width:auto;height:auto}
[data-template="atelier"] .card__link{color:var(--ink);font-weight:500;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
[data-template="atelier"] .card__price{color:var(--ink);font-family:var(--ff-heading);font-size:17px}
[data-template="atelier"] .card__image,[data-template="atelier"] .area-service-card__media,[data-template="atelier"] .article-card__media,[data-template="atelier"] .article-featured__media,[data-template="atelier"] .subhero__photo,[data-template="atelier"] .photo{background:var(--bg-soft);border:1px solid var(--line);border-radius:0;filter:grayscale(1) contrast(1.02)}
[data-template="atelier"] .card__image::after{display:none}
[data-template="atelier"] .card:hover .card__image,[data-template="atelier"] .area-service-card:hover .area-service-card__media,[data-template="atelier"] .article-card:hover .article-card__media,[data-template="atelier"] .subhero__photo:hover{filter:grayscale(0)}
[data-template="atelier"] .area-service-card{background:transparent;border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .area-service-card::after{display:none}
[data-template="atelier"] .area-service-card:hover{transform:none;box-shadow:none;border-color:var(--ink)}
[data-template="atelier"] .area-service-card__price{color:var(--ink);font-family:var(--ff-heading)}
[data-template="atelier"] .faq__item{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
[data-template="atelier"] .faq__q{background:transparent;color:var(--ink);font-family:var(--ff-heading);font-weight:500;font-size:20px;letter-spacing:-.01em}
[data-template="atelier"] .faq__icon{color:var(--brand)}
[data-template="atelier"] .faq__a p{color:var(--ink-2)}
[data-template="atelier"] .form-card{background:var(--bg-soft);border:1px solid var(--ink);border-radius:0;box-shadow:none;padding:36px}
[data-template="atelier"] .field label{color:var(--ink);text-transform:uppercase;letter-spacing:.1em;font-size:11.5px;font-weight:600}
[data-template="atelier"] .field input,[data-template="atelier"] .field textarea,[data-template="atelier"] .field select{background:var(--bg);border:0;border-bottom:1px solid var(--line-2);border-radius:0;color:var(--ink);padding:12px 2px}
[data-template="atelier"] .field input:focus,[data-template="atelier"] .field textarea:focus,[data-template="atelier"] .field select:focus{border-color:var(--brand);box-shadow:0 1px 0 0 var(--brand)}
[data-template="atelier"] .form-step__bubble{background:var(--bg);border:1px solid var(--line-2);border-radius:0;color:var(--muted);font-family:var(--ff-heading)}
[data-template="atelier"] .form-step.is-active .form-step__bubble{background:var(--ink);border-color:var(--ink);color:var(--bg);box-shadow:none}
[data-template="atelier"] .form-step__name{color:var(--ink);font-family:var(--ff-heading)}
[data-template="atelier"] .file-drop{background:var(--bg);border:1px dashed var(--line-2);border-radius:0;color:var(--muted)}
[data-template="atelier"] .file-drop:hover,[data-template="atelier"] .file-drop.is-drag{border-color:var(--brand);background:rgba(var(--brand-rgb),0.04);color:var(--brand)}
[data-template="atelier"] .postal-check{background:var(--bg-soft);border:1px solid var(--ink);border-radius:0;box-shadow:none;backdrop-filter:none}
[data-template="atelier"] .postal-check__pin{background:none;border:1px solid var(--brand);border-radius:0;color:var(--brand)}
[data-template="atelier"] .postal-check__title{color:var(--ink);font-family:var(--ff-heading)}
[data-template="atelier"] .postal-check__row{background:var(--bg);border:0;border-bottom:1px solid var(--line-2);border-radius:0}
[data-template="atelier"] .postal-check__row input{color:var(--ink)}
[data-template="atelier"] .postal-check__hint{background:var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .btn--primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);box-shadow:none;backdrop-filter:none}
[data-template="atelier"] .btn--primary .btn__arrow{background:var(--bg);color:var(--ink)}
[data-template="atelier"] .btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--ink)}
[data-template="atelier"] .btn--ghost .btn__arrow{background:var(--ink);color:var(--bg)}
[data-template="atelier"] .review-card blockquote{font-family:var(--ff-heading);font-size:20px;font-style:italic;color:var(--ink);line-height:1.4}
[data-template="atelier"] .review-card__author{color:var(--ink);text-transform:uppercase;letter-spacing:.08em;font-size:12px}
[data-template="atelier"] .review-card__source{color:var(--muted)}
[data-template="atelier"] .reviews-carousel__card{background:transparent;border:0;border-left:1px solid var(--line);border-radius:0;box-shadow:none}
[data-template="atelier"] .reviews-carousel__nav,[data-template="atelier"] .card-scroller__nav,[data-template="atelier"] .hero-carousel__nav{background:var(--bg);border:1px solid var(--ink);border-radius:0;color:var(--ink);box-shadow:none}
[data-template="atelier"] .trusted{background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
[data-template="atelier"] .trusted__label{color:var(--muted);text-transform:uppercase;letter-spacing:.16em}
[data-template="atelier"] .process__step{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
[data-template="atelier"] .process__step:hover{transform:none;box-shadow:none;border-color:var(--ink)}
[data-template="atelier"] .process__step::before{display:none}
[data-template="atelier"] .process__check{background:none;border:1px solid var(--brand);border-radius:0;color:var(--brand)}
[data-template="atelier"] .process__step h3{font-family:var(--ff-heading);color:var(--ink)}
[data-template="atelier"] .cta-strip{background:var(--ink);border:0;border-radius:0;box-shadow:none;color:var(--bg)}
[data-template="atelier"] .cta-strip::before,[data-template="atelier"] .cta-strip::after{display:none}
[data-template="atelier"] .cta-strip h2{color:var(--bg);letter-spacing:-.03em}
[data-template="atelier"] .cta-strip p{color:rgba(244,241,234,0.78)}
[data-template="atelier"] .cta-strip .btn--primary{background:var(--bg);color:var(--ink);border-color:var(--bg);box-shadow:none}
[data-template="atelier"] .cta-strip .btn--primary .btn__arrow{background:var(--ink);color:var(--bg)}
[data-template="atelier"] .cta-strip .btn--ghost{background:transparent;color:var(--bg);border-color:rgba(244,241,234,0.5);backdrop-filter:none}
[data-template="atelier"] .article-card{background:transparent;border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .article-card:hover{transform:none;box-shadow:none}
[data-template="atelier"] .article-card__body h3{font-family:var(--ff-heading);color:var(--ink)}
[data-template="atelier"] .article-card__cta,[data-template="atelier"] .article-featured__cta{color:var(--brand);text-transform:uppercase;letter-spacing:.12em;font-size:12px}
[data-template="atelier"] .article-featured{background:transparent;border:0;border-top:2px solid var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .article-featured:hover{transform:none;box-shadow:none}
[data-template="atelier"] .article-featured__body h2{font-family:var(--ff-heading);color:var(--ink);letter-spacing:-.03em}
[data-template="atelier"] .article-badge{background:var(--ink);color:var(--bg);border-radius:0}
[data-template="atelier"] .article-filter__chip{background:transparent;border:1px solid var(--line-2);border-radius:0;color:var(--ink-2);text-transform:uppercase;letter-spacing:.1em;font-size:11.5px}
[data-template="atelier"] .pagination__btn{background:transparent;border:1px solid var(--line-2);border-radius:0;color:var(--ink)}
[data-template="atelier"] .pagination__btn.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}
[data-template="atelier"] .price-table{background:transparent;border:1px solid var(--ink);border-radius:0;overflow:hidden}
[data-template="atelier"] .price-table th{background:var(--ink);color:var(--bg);text-transform:uppercase;letter-spacing:.1em;font-size:11.5px;border-color:var(--ink)}
[data-template="atelier"] .price-table td{border-color:var(--line)}
[data-template="atelier"] .price-table .num{color:var(--ink);font-family:var(--ff-heading)}
[data-template="atelier"] .sitemap-block{background:transparent;border:0;border-top:1px solid var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .sitemap-block:hover{transform:none;box-shadow:none}
[data-template="atelier"] .sitemap-block__icon{background:none;border:1px solid var(--brand);border-radius:0;color:var(--brand)}
[data-template="atelier"] .sitemap-block h2{font-family:var(--ff-heading);color:var(--ink)}
[data-template="atelier"] .sitemap-block a:hover{color:var(--brand)}
[data-template="atelier"] .about-check{background:var(--bg-soft);border:1px solid var(--ink);border-radius:0;box-shadow:none}
[data-template="atelier"] .about-check__check{background:none;border:1px solid var(--brand);border-radius:0;color:var(--brand);box-shadow:none}
[data-template="atelier"] .about-check__label{font-family:var(--ff-heading);color:var(--ink)}
[data-template="atelier"] .contact-hero,[data-template="atelier"] .article-hero{background:var(--bg-soft);border-bottom:1px solid var(--line)}
[data-template="atelier"] .contact-method{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
[data-template="atelier"] .mobile-call-bar{background:rgba(244,241,234,0.94);border-top:1px solid var(--ink);backdrop-filter:none}

/* — Animationer (Atelier), reduced-motion-säkrade — */
@media (prefers-reduced-motion: no-preference){
  @keyframes at-rule-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes at-fade-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  [data-template="atelier"] .section-head{transform-origin:left center}
  [data-template="atelier"] .section{position:relative}
  [data-template="atelier"] .section::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--brand);transform:scaleX(0);transform-origin:left center;animation:at-rule-draw .9s cubic-bezier(.2,.7,.3,1) both}
  [data-template="atelier"] .reveal{animation:at-fade-up .7s cubic-bezier(.2,.7,.3,1) both}
  [data-template="atelier"] .subhero h1{animation:at-fade-up .8s cubic-bezier(.2,.7,.3,1) both}
  [data-template="atelier"] .card__image img,[data-template="atelier"] .article-card__media img,[data-template="atelier"] .area-service-card__media img,[data-template="atelier"] .subhero__photo img{transition:transform .9s cubic-bezier(.2,.7,.3,1),filter .6s ease}
  [data-template="atelier"] .card__link::after,[data-template="atelier"] .article-card__cta span{transition:transform .3s cubic-bezier(.2,.7,.3,1)}
  [data-template="atelier"] .nav__links > a,[data-template="atelier"] .footer li a{transition:color .25s ease,background-size .3s ease}
}
@media (prefers-reduced-motion: reduce){
  [data-template="atelier"] .section::before{animation:none;transform:scaleX(1)}
  [data-template="atelier"] .reveal,[data-template="atelier"] .subhero h1{animation:none}
}


/* ═══ Atelier — CHROME ═══ */
/* ═══════════════════════════════════════════════════════════════════════════
   ATELIER — en editorial galleri-mall (Tailwind "Studio"-känsla). Ljus,
   papperslik off-white bakgrund, nästan svart bläck, EN accentfärg (--brand),
   stor serif-display (--ff-heading), asymmetrisk vänsterställd grid, oversized
   rubriker, tunna hårlinjer. Renderas av components/templates/atelier/* när
   siteSettings.activeTemplate === "atelier". Konsumerar SAMMA Sanity-data som
   default/Aurora; bara presentationen skiljer. Klassprefix .at-.
   ═══════════════════════════════════════════════════════════════════════════ */

[data-template="atelier"] {
  --at-paper: #f7f5f0;
  --at-paper-2: #efece4;
  --at-ink: #14110d;
  --at-ink-2: #4b463d;
  --at-muted: #8c857a;
  --at-line: rgba(20, 17, 13, .14);
  --at-line-soft: rgba(20, 17, 13, .07);
}
[data-template="atelier"] body { background: var(--at-paper); color: var(--at-ink-2); }

/* ── HEADER — statisk, transparent, hårlinje-avgränsad ── */
.at-header { position: relative; z-index: 100; background: transparent; border-bottom: 1px solid transparent; transition: border-color .3s ease, background .3s ease; }
.at-header.is-scrolled { border-bottom: 1px solid var(--at-line); background: rgba(247, 245, 240, .82); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.at-header__inner { max-width: 1320px; margin: 0 auto; padding: 26px 40px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 40px; }

.at-brand { display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0; }
.at-brand__mark { display: inline-flex; width: 30px; height: 30px; }
.at-brand__mark img { width: 30px; height: 30px; object-fit: contain; }
.at-brand__name { font-family: var(--ff-heading); font-weight: 600; font-size: 21px; letter-spacing: -.02em; color: var(--at-ink); line-height: 1; }

.at-nav { display: flex; gap: 30px; margin-left: 8px; }
.at-nav__link { position: relative; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-ink-2); padding-bottom: 3px; transition: color .2s ease; }
.at-nav__link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 0; height: 1px; background: var(--brand); transition: right .25s ease; }
.at-nav__link:hover { color: var(--at-ink); }
.at-nav__link:hover::after { right: 0; }

.at-header__right { display: flex; align-items: center; gap: 26px; justify-self: end; }
.at-header__phone { font-family: var(--ff-heading); font-size: 15px; color: var(--at-ink); white-space: nowrap; }
.at-header__phone:hover { color: var(--brand); }
.at-header__cta { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-ink); border-bottom: 1px solid transparent; padding-bottom: 2px; transition: border-color .2s ease, color .2s ease; }
.at-header__cta-arrow { transition: transform .2s ease; }
.at-header__cta:hover { color: var(--brand); border-bottom-color: var(--brand); }
.at-header__cta:hover .at-header__cta-arrow { transform: translateX(3px); }

.at-menu-toggle { display: none; background: none; border: 0; cursor: pointer; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-ink); padding: 4px 0; }

/* mobil-overlay */
.at-overlay { position: fixed; inset: 0; z-index: 200; background: var(--at-paper); padding: 26px 28px 40px; display: flex; flex-direction: column; }
.at-overlay__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 24px; border-bottom: 1px solid var(--at-line); }
.at-overlay__label { font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--at-muted); }
.at-overlay__close { display: inline-flex; align-items: center; gap: 8px; background: none; border: 0; cursor: pointer; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--at-ink); }
.at-overlay__nav { display: flex; flex-direction: column; margin-top: 8px; }
.at-overlay__link { display: flex; align-items: baseline; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--at-line-soft); font-family: var(--ff-heading); font-weight: 500; font-size: 30px; letter-spacing: -.02em; color: var(--at-ink); }
.at-overlay__index { font-family: var(--ff-heading); font-size: 13px; color: var(--at-muted); letter-spacing: 0; }
.at-overlay__foot { margin-top: auto; padding-top: 24px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.at-overlay__foot a { font-family: var(--ff-heading); font-size: 18px; color: var(--at-ink); }
.at-overlay__cta { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--brand); }

/* ── HERO — asymmetrisk, vänsterställd editorial split ── */
.at-hero { background: var(--at-paper); }
.at-hero__inner { max-width: 1320px; margin: 0 auto; padding: 72px 40px 0; display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 72px; align-items: center; }

.at-hero__copy { max-width: 620px; }
.at-hero__eyebrow { display: inline-flex; align-items: center; gap: 14px; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; font-weight: 500; color: var(--at-ink-2); margin-bottom: 28px; }
.at-hero__eyebrow-line { width: 36px; height: 1px; background: var(--brand); }
.at-hero__title { font-family: var(--ff-heading); font-weight: 500; font-size: clamp(48px, 7vw, 104px); line-height: .96; letter-spacing: -.03em; color: var(--at-ink); margin: 0 0 28px; }
.at-hero__title em { font-style: normal; color: var(--brand); }
.at-hero__title strong { font-weight: 600; }
.at-hero__lead { font-size: 20px; line-height: 1.55; color: var(--at-ink-2); max-width: 460px; margin: 0 0 36px; }
.at-hero__cta-row { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.at-hero__textlink { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-ink); border-bottom: 1px solid var(--at-line); padding-bottom: 3px; transition: border-color .2s ease, color .2s ease; }
.at-hero__textlink span { transition: transform .2s ease; }
.at-hero__textlink:hover { color: var(--brand); border-bottom-color: var(--brand); }
.at-hero__textlink:hover span { transform: translateX(3px); }
.at-hero__rating { display: inline-flex; align-items: center; gap: 10px; margin-top: 30px; color: var(--at-ink-2); font-size: 14px; }
.at-hero__rating .hero__stars { color: var(--brand); display: inline-flex; }
.at-hero__postal { max-width: 460px; margin-top: 32px; }

.at-hero__media { position: relative; }
.at-hero__frame { position: relative; margin: 0; border: 1px solid var(--at-line); aspect-ratio: 4 / 5; overflow: hidden; background: var(--at-paper-2); }
.at-hero__photo, .at-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: filter .6s ease; }
.at-hero__frame:hover .at-hero__photo, .at-hero__frame:hover .at-hero__video { filter: grayscale(0); }
.at-hero__placeholder { position: absolute; inset: 0; background: repeating-linear-gradient(135deg, var(--at-paper-2), var(--at-paper-2) 14px, var(--at-paper) 14px, var(--at-paper) 28px); }
.at-hero__caption { margin-top: 12px; font-family: var(--ff-heading); font-style: italic; font-size: 14px; color: var(--at-muted); }

/* metadata-rail under hero, full bredd */
.at-rail { margin-top: 72px; border-top: 1px solid var(--at-line); border-bottom: 1px solid var(--at-line); }
.at-rail__inner { max-width: 1320px; margin: 0 auto; padding: 0 40px; display: flex; flex-wrap: wrap; }
.at-rail__item { display: inline-flex; align-items: center; gap: 8px; padding: 18px 28px 18px 0; margin-right: 28px; border-right: 1px solid var(--at-line); font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--at-ink-2); }
.at-rail__item:last-child { border-right: 0; margin-right: 0; }
.at-rail__item strong { font-family: var(--ff-heading); font-weight: 600; font-size: 14px; letter-spacing: -.01em; color: var(--at-ink); text-transform: none; }

/* ── TRUST-BAND ── */
.at-trust { border-bottom: 1px solid var(--at-line); }
.at-trust__inner { max-width: 1320px; margin: 0 auto; padding: 40px; }
.at-trust .trusted { display: flex; flex-direction: column; gap: 18px; align-items: flex-start; }
.at-trust .trusted__label { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--at-muted); }
.at-trust .trusted__row { display: flex; flex-wrap: wrap; gap: 36px; align-items: center; }
.at-trust .trusted__google { display: inline-flex; align-items: center; gap: 12px; }
.at-trust .trusted__google-meta { display: flex; flex-direction: column; }
.at-trust .trusted__google-rating { display: inline-flex; align-items: center; gap: 8px; font-family: var(--ff-heading); font-weight: 600; color: var(--at-ink); }
.at-trust .trusted__google-rating .hero__stars { color: var(--brand); }
.at-trust .trusted__google-sub { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--at-muted); }

/* ── SEKTIONER ── */
.at-section { max-width: 1320px; margin: 0 auto; padding: 100px 40px; }
.at-section__head { max-width: 720px; margin-bottom: 56px; }
.at-section__eyebrow { display: inline-block; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; font-weight: 500; color: var(--brand); margin-bottom: 16px; }
.at-section__title { font-family: var(--ff-heading); font-weight: 500; font-size: clamp(32px, 4.4vw, 56px); letter-spacing: -.03em; line-height: 1.02; color: var(--at-ink); margin: 0; }
.at-section__intro { font-size: 19px; line-height: 1.6; color: var(--at-ink-2); margin-top: 18px; max-width: 560px; }

/* TJÄNSTER — redaktionellt kort-grid */
.at-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--at-line); border: 1px solid var(--at-line); }
.at-card { position: relative; display: flex; flex-direction: column; background: var(--at-paper); padding: 0; transition: background .25s ease; }
.at-card:hover { background: var(--at-paper-2); }
.at-card__index { position: absolute; top: 18px; left: 18px; z-index: 2; font-family: var(--ff-heading); font-size: 13px; color: var(--at-muted); }
.at-card__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--at-paper-2); border-bottom: 1px solid var(--at-line); }
.at-card__media img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: filter .5s ease, transform .6s ease; }
.at-card:hover .at-card__media img { filter: grayscale(0); transform: scale(1.03); }
.at-card__icon { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--brand); }
.at-card__body { padding: 26px 24px 28px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.at-card__body h3 { font-family: var(--ff-heading); font-weight: 600; font-size: 22px; letter-spacing: -.01em; color: var(--at-ink); margin: 0; line-height: 1.12; }
.at-card__body p { font-size: 15px; line-height: 1.55; color: var(--at-ink-2); margin: 0; }
.at-card__price { font-family: var(--ff-heading); font-size: 14px; color: var(--at-muted); }
.at-card__link { margin-top: auto; padding-top: 12px; display: inline-flex; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-ink); }
.at-card__arrow { transition: transform .2s ease; }
.at-card:hover .at-card__arrow { transform: translateX(4px); color: var(--brand); }

/* STATS — typografiskt band */
.at-band { border-top: 1px solid var(--at-line); border-bottom: 1px solid var(--at-line); }
.at-band__inner { max-width: 1320px; margin: 0 auto; padding: 0 40px; display: grid; grid-template-columns: repeat(4, 1fr); }
.at-stat { padding: 56px 32px 56px 0; border-right: 1px solid var(--at-line); }
.at-stat:last-child { border-right: 0; }
.at-stat__num { font-family: var(--ff-heading); font-weight: 500; font-size: clamp(36px, 4vw, 56px); letter-spacing: -.03em; line-height: 1; color: var(--at-ink); }
.at-stat__lab { margin-top: 12px; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--at-muted); }

/* OM / USP — punktkort */
.at-usp { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px 56px; }
.at-usp__item { border-top: 1px solid var(--at-line); padding-top: 26px; }
.at-usp__icon { display: inline-flex; color: var(--brand); margin-bottom: 18px; }
.at-usp__item h3 { font-family: var(--ff-heading); font-weight: 600; font-size: 21px; letter-spacing: -.01em; color: var(--at-ink); margin: 0 0 10px; line-height: 1.15; }
.at-usp__item p { font-size: 15.5px; line-height: 1.6; color: var(--at-ink-2); margin: 0; }

/* PROCESS — numrerade steg */
.at-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 48px; }
.at-step { border-top: 1px solid var(--at-ink); padding-top: 22px; }
.at-step__num { font-family: var(--ff-heading); font-weight: 500; font-size: 15px; color: var(--brand); margin-bottom: 16px; }
.at-step h3 { font-family: var(--ff-heading); font-weight: 600; font-size: 20px; letter-spacing: -.01em; color: var(--at-ink); margin: 0 0 10px; line-height: 1.15; }
.at-step p { font-size: 15px; line-height: 1.6; color: var(--at-ink-2); margin: 0; }

/* ── ÅTERANVÄNDA KOMPONENTER, omstylade för papper/bläck ── */
.at-main .btn { display: inline-flex; align-items: center; gap: 9px; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; border-radius: 0; padding: 16px 28px; transition: background .2s ease, color .2s ease, border-color .2s ease; }
.at-main .btn--primary { background: var(--at-ink); color: var(--at-paper); border: 1px solid var(--at-ink); box-shadow: none; }
.at-main .btn--primary:hover { background: var(--brand); border-color: var(--brand); color: #fff; }
.at-main .btn--ghost, .at-main .btn--block { background: transparent; color: var(--at-ink); border: 1px solid var(--at-line); }
.at-main .btn--ghost:hover, .at-main .btn--block:hover { border-color: var(--at-ink); }
.at-main .btn__arrow { transition: transform .2s ease; }
.at-main .btn:hover .btn__arrow { transform: translateX(3px); }

.at-main .postal-check { border: 1px solid var(--at-line); border-radius: 0; background: var(--at-paper); padding: 20px; }
.at-main .postal-check__title { font-family: var(--ff-heading); font-weight: 600; color: var(--at-ink); }
.at-main .postal-check__sub { color: var(--at-muted); }
.at-main .postal-check__pin { color: var(--brand); }
.at-main .postal-check__row { border: 1px solid var(--at-line); border-radius: 0; background: var(--at-paper); }
.at-main .postal-check__row.is-invalid { border-color: var(--brand); }
.at-main .postal-check input { background: transparent; color: var(--at-ink); }
.at-main .postal-check__hint { color: var(--brand); }

.at-main .reviews-carousel__card.card.review-card { background: var(--at-paper); border: 1px solid var(--at-line); border-radius: 0; box-shadow: none; }
.at-main .review-card__avatar { background: var(--at-paper-2); color: var(--at-ink); border-radius: 0; }
.at-main .review-card__author { font-family: var(--ff-heading); color: var(--at-ink); }
.at-main .review-card blockquote { color: var(--at-ink-2); }
.at-main .reviews-carousel .hero__stars { color: var(--brand); }

.at-main .section .container { max-width: 1320px; }
.at-main .faq { border-top: 1px solid var(--at-line); }
.at-main .faq__item { border-bottom: 1px solid var(--at-line); }
.at-main .faq__q { font-family: var(--ff-heading); font-weight: 600; font-size: 19px; color: var(--at-ink); padding: 24px 0; }
.at-main .faq__icon { color: var(--brand); }
.at-main .faq__a { color: var(--at-ink-2); }
.at-main .section-head .eyebrow { color: var(--brand); letter-spacing: .16em; text-transform: uppercase; }
.at-main .section-head h2 { font-family: var(--ff-heading); font-weight: 500; letter-spacing: -.03em; color: var(--at-ink); }

.at-main .cta-strip { border: 1px solid var(--at-ink); border-radius: 0; background: var(--at-paper-2); box-shadow: none; padding: 56px 48px; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.at-main .cta-strip h2 { font-family: var(--ff-heading); font-weight: 500; font-size: clamp(28px, 3.4vw, 44px); letter-spacing: -.03em; color: var(--at-ink); }
.at-main .cta-strip p { color: var(--at-ink-2); }
.at-main .cta-strip__buttons { display: flex; gap: 16px; flex-wrap: wrap; }

/* ── FOOTER — ljus, redaktionell kolofon ── */
.at-footer { background: var(--at-paper-2); border-top: 1px solid var(--at-ink); }
.at-footer__inner { max-width: 1320px; margin: 0 auto; padding: 80px 40px 36px; }
.at-footer__wordmark { font-family: var(--ff-heading); font-weight: 500; font-size: clamp(40px, 9vw, 120px); letter-spacing: -.04em; line-height: .95; color: var(--at-ink); margin-bottom: 64px; }

.at-footer__cols { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 0; border-top: 1px solid var(--at-line); }
.at-footer__about, .at-footer__col { padding: 40px 36px 8px 0; border-right: 1px solid var(--at-line); }
.at-footer__col:last-child { border-right: 0; padding-right: 0; }
.at-footer__tagline { font-family: var(--ff-heading); font-size: 17px; line-height: 1.5; color: var(--at-ink); max-width: 360px; margin: 0 0 20px; }
.at-footer__address { font-style: normal; display: flex; flex-direction: column; gap: 6px; font-size: 14.5px; color: var(--at-ink-2); }
.at-footer__address a { color: var(--at-ink-2); transition: color .2s ease; }
.at-footer__address a:hover { color: var(--brand); }
.at-footer__col h4 { font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; color: var(--at-muted); margin: 0 0 18px; }
.at-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.at-footer__col a { font-size: 14.5px; color: var(--at-ink-2); border-bottom: 1px solid transparent; padding-bottom: 1px; transition: color .2s ease, border-color .2s ease; }
.at-footer__col a:hover { color: var(--at-ink); border-bottom-color: var(--brand); }

.at-footer__bottom { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--at-line); display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; }
.at-footer__copy { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--at-muted); }
.at-footer__links { display: flex; gap: 22px; flex-wrap: wrap; }
.at-footer__links a { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--at-muted); transition: color .2s ease; }
.at-footer__links a:hover { color: var(--at-ink); }

/* ── RESPONSIVT ── */
@media (max-width: 1100px) {
  .at-hero__inner { gap: 48px; }
  .at-cards { grid-template-columns: repeat(2, 1fr); }
  .at-usp { grid-template-columns: repeat(2, 1fr); }
  .at-steps { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
  .at-header__inner { grid-template-columns: 1fr auto; gap: 16px; padding: 20px 24px; }
  .at-nav { display: none; }
  .at-header__phone, .at-header__cta { display: none; }
  .at-menu-toggle { display: inline-block; }
  .at-hero__inner { grid-template-columns: 1fr; padding: 48px 24px 0; gap: 40px; }
  .at-hero__media { order: -1; }
  .at-hero__frame { aspect-ratio: 4 / 3; }
  .at-rail { margin-top: 48px; }
  .at-rail__inner { padding: 0 24px; }
  .at-section { padding: 72px 24px; }
  .at-band__inner { grid-template-columns: repeat(2, 1fr); padding: 0 24px; }
  .at-stat { padding: 36px 24px 36px 0; }
  .at-stat:nth-child(2n) { border-right: 0; }
  .at-footer__inner { padding: 56px 24px 32px; }
  .at-footer__cols { grid-template-columns: 1fr 1fr; }
  .at-footer__about { grid-column: 1 / -1; border-right: 0; padding-right: 0; }
  .at-footer__col:nth-child(2n) { border-right: 0; padding-right: 0; }
  .at-main .cta-strip { padding: 40px 28px; }
}
@media (max-width: 600px) {
  .at-cards { grid-template-columns: 1fr; }
  .at-usp { grid-template-columns: 1fr; }
  .at-steps { grid-template-columns: 1fr; }
  .at-band__inner { grid-template-columns: 1fr; }
  .at-stat { border-right: 0; padding: 28px 0; border-bottom: 1px solid var(--at-line); }
  .at-stat:last-child { border-bottom: 0; }
  .at-footer__cols { grid-template-columns: 1fr; }
  .at-footer__col { border-right: 0; padding-right: 0; }
  .at-hero__cta-row { gap: 18px; }
}


/* ═══ QA-FIXAR (atelier) — synlighet/placering/kontrast, brand-oberoende ═══ */
/* [hög] .at-trust .trusted__row / .trusted__google-meta */
html[data-template="atelier"] .at-trust .trusted__row a:not(.trusted__google){filter:grayscale(1) opacity(.7);transition:filter .2s ease,opacity .2s ease}
html[data-template="atelier"] .at-trust .trusted__row a:not(.trusted__google):hover{filter:none;opacity:1}
/* [medel] .at-hero__title em */
html[data-template="atelier"] .at-hero__title em{color:var(--brand-deep)}
/* [låg] .subhero__crumbs span */
html[data-template="atelier"] .subhero__crumbs span{color:var(--muted)}
