/* ═══ EXKLUSIV MALL: Monarch (monarch) ═══ Inre-sid-CSS-lager + animation. Scopat [data-template="monarch"]. Video:true. Signatur:#9A2940. */

html[data-template="monarch"]{--bg:#0B221C;--bg-soft:#0E2A22;--ink:#F6EFE2;--ink-2:#D8CDB6;--muted:#9FB0A4;--line:rgba(201,162,90,0.22);--line-2:rgba(201,162,90,0.42);--radius:2px;--radius-lg:4px;--radius-sm:2px;--ff-heading:var(--next-font-cormorant),"Cormorant Garamond","Playfair Display",Georgia,"Times New Roman",serif;--ff-body:var(--next-font-inter),-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;--star:#C9A25A;--brand-deep:#6E1B2E;--mon-gold:#C9A25A;--mon-gold-soft:rgba(201,162,90,0.14);--mon-panel:#103128;--mon-panel-2:#0C261F;--mon-on-gold:#0B221C}
html[data-template="monarch"]{--btn-radius:2px;--btn-pad:16px 32px;--btn-weight:600;--btn-transform:uppercase;--btn-tracking:.18em}
[data-template="monarch"] body{background:var(--bg);background-image:radial-gradient(120% 80% at 50% -10%,rgba(110,27,46,0.32) 0%,transparent 55%),radial-gradient(80% 60% at 100% 0%,rgba(201,162,90,0.07) 0%,transparent 60%);background-attachment:fixed;color:var(--ink-2)}
[data-template="monarch"] h1,[data-template="monarch"] h2,[data-template="monarch"] h3,[data-template="monarch"] h4{font-family:var(--ff-heading);color:var(--ink);font-weight:600;letter-spacing:.004em}
[data-template="monarch"] a{color:inherit}
[data-template="monarch"] .subhero{background:transparent;border-bottom:1px solid var(--line);padding:148px 0 60px;position:relative}
[data-template="monarch"] .subhero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--mon-gold),transparent);opacity:.6}
[data-template="monarch"] .subhero h1{color:var(--ink);font-weight:600;line-height:1.02;letter-spacing:.004em;max-width:18ch}
[data-template="monarch"] .subhero__lead{color:var(--ink-2);max-width:60ch}
[data-template="monarch"] .subhero__crumbs,[data-template="monarch"] .subhero__crumbs a{color:var(--muted);text-transform:uppercase;letter-spacing:.2em;font-size:11px}
[data-template="monarch"] .subhero__crumbs a:hover{color:var(--mon-gold)}
[data-template="monarch"] .subhero__crumbs span{color:var(--line-2)}
[data-template="monarch"] .subhero__answer{background:var(--mon-panel);border:1px solid var(--line);border-top:2px solid var(--mon-gold);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgba(0,0,0,.4);color:var(--ink-2);padding:24px 28px}
[data-template="monarch"] .subhero__answer-label{color:var(--mon-gold);text-transform:uppercase;letter-spacing:.2em;font-size:11px}
[data-template="monarch"] .subhero__answer-question{color:var(--ink);font-family:var(--ff-heading);font-size:21px}
[data-template="monarch"] .subhero__answer p{color:var(--ink-2)}
[data-template="monarch"] .subhero__photo,[data-template="monarch"] .photo{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 30px 70px rgba(0,0,0,.45)}
[data-template="monarch"] .section:nth-child(even){background:var(--mon-panel-2)}
[data-template="monarch"] .section-head{position:relative}
[data-template="monarch"] .section-head h2{color:var(--ink);letter-spacing:.004em;line-height:1.05}
[data-template="monarch"] .section-head p{color:var(--ink-2)}
[data-template="monarch"] .eyebrow,[data-template="monarch"] .section-head .eyebrow{background:none;border:0;border-radius:0;padding:0;color:var(--mon-gold);font-family:var(--ff-body);font-weight:600;text-transform:uppercase;letter-spacing:.24em;font-size:11px;display:inline-flex;align-items:center;gap:12px}
[data-template="monarch"] .eyebrow::before{content:"";width:26px;height:1px;background:var(--mon-gold)}
[data-template="monarch"] .eyebrow::after{content:"";width:26px;height:1px;background:var(--mon-gold)}
[data-template="monarch"] .card,[data-template="monarch"] .aside-card,[data-template="monarch"] .other-services__card,[data-template="monarch"] .area-service-card,[data-template="monarch"] .case-card,[data-template="monarch"] .related-link,[data-template="monarch"] .hub-bottom__panel{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 44px rgba(0,0,0,.32);color:var(--ink-2)}
[data-template="monarch"] .card{position:relative;overflow:hidden}
[data-template="monarch"] .card::after{content:"";position:absolute;inset:0;border-top:2px solid transparent;border-radius:inherit;transition:border-color .3s ease;pointer-events:none}
[data-template="monarch"] .card:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 30px 64px rgba(0,0,0,.5)}
[data-template="monarch"] .card:hover::after{border-top-color:var(--mon-gold)}
[data-template="monarch"] .card h3,[data-template="monarch"] .related-link h3,[data-template="monarch"] .area-service-card h3{color:var(--ink);font-family:var(--ff-heading);font-size:23px}
[data-template="monarch"] .card p{color:var(--muted)}
[data-template="monarch"] .card__image,[data-template="monarch"] .area-service-card__media{background:var(--mon-panel-2);border-bottom:1px solid var(--line)}
[data-template="monarch"] .card__icon{background:var(--mon-gold-soft);border:1px solid var(--line-2);color:var(--mon-gold);border-radius:50%}
[data-template="monarch"] .card__price,[data-template="monarch"] .area-service-card__price{color:var(--mon-gold);font-family:var(--ff-heading);font-size:20px}
[data-template="monarch"] .card__price small{color:var(--muted)}
[data-template="monarch"] .card__link{color:var(--ink);font-family:var(--ff-body);text-transform:uppercase;letter-spacing:.16em;font-size:12px}
[data-template="monarch"] .card:hover .card__link{color:var(--mon-gold)}
[data-template="monarch"] .article-card,[data-template="monarch"] .article-featured{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 44px rgba(0,0,0,.32);color:var(--ink-2)}
[data-template="monarch"] .article-card:hover,[data-template="monarch"] .article-featured:hover{transform:translateY(-4px);border-color:var(--line-2);box-shadow:0 30px 64px rgba(0,0,0,.5)}
[data-template="monarch"] .article-card h3,[data-template="monarch"] .article-featured h2,[data-template="monarch"] .article-card__body h3{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .article-card p{color:var(--muted)}
[data-template="monarch"] .article-card__media,[data-template="monarch"] .article-featured__media{background:var(--mon-panel-2);border-bottom:1px solid var(--line)}
[data-template="monarch"] .article-card__cta,[data-template="monarch"] .article-featured__cta{color:var(--mon-gold);text-transform:uppercase;letter-spacing:.16em;font-size:12px}
[data-template="monarch"] .article-badge{background:var(--mon-gold);color:var(--mon-on-gold);font-family:var(--ff-body);text-transform:uppercase;letter-spacing:.12em;border-radius:2px;font-weight:700}
[data-template="monarch"] .article-hero,[data-template="monarch"] .contact-hero{background:transparent;border-bottom:1px solid var(--line)}
[data-template="monarch"] .article-filter__chip{background:transparent;border:1px solid var(--line);border-radius:999px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.12em;font-size:11px}
[data-template="monarch"] .article-filter__chip.is-active{background:var(--mon-gold);border-color:var(--mon-gold);color:var(--mon-on-gold)}
[data-template="monarch"] .faq__item{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:none;overflow:hidden}
[data-template="monarch"] .faq__item+.faq__item{margin-top:12px}
[data-template="monarch"] .faq__q{background:transparent;color:var(--ink);font-family:var(--ff-heading);font-weight:600;font-size:21px;letter-spacing:.004em}
[data-template="monarch"] .faq__icon{color:var(--mon-gold)}
[data-template="monarch"] .faq__a p{color:var(--ink-2)}
[data-template="monarch"] .form-card{background:var(--mon-panel);border:1px solid var(--line);border-top:2px solid var(--mon-gold);border-radius:var(--radius-lg);box-shadow:0 30px 70px rgba(0,0,0,.45);color:var(--ink-2)}
[data-template="monarch"] .form-card h2{color:var(--ink)}
[data-template="monarch"] .field label,[data-template="monarch"] .form-pane__title{color:var(--ink);text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:600}
[data-template="monarch"] .field input,[data-template="monarch"] .field textarea,[data-template="monarch"] .field select,[data-template="monarch"] .postal-check__row input,[data-template="monarch"] .services-search input{background:var(--mon-panel-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-family:var(--ff-body)}
[data-template="monarch"] .field input::placeholder,[data-template="monarch"] .field textarea::placeholder,[data-template="monarch"] .postal-check__row input::placeholder{color:var(--muted)}
[data-template="monarch"] .field input:focus,[data-template="monarch"] .field textarea:focus,[data-template="monarch"] .field select:focus,[data-template="monarch"] .postal-check__row input:focus{border-color:var(--mon-gold);outline:none;box-shadow:0 0 0 3px var(--mon-gold-soft)}
[data-template="monarch"] .form-step__bubble{background:var(--mon-panel-2);border:1px solid var(--line-2);color:var(--muted);font-family:var(--ff-heading);border-radius:50%}
[data-template="monarch"] .form-step.is-active .form-step__bubble{background:var(--mon-gold);border-color:var(--mon-gold);color:var(--mon-on-gold)}
[data-template="monarch"] .form-step__name{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .file-drop{background:var(--mon-panel-2);border:1px dashed var(--line-2);border-radius:var(--radius-lg);color:var(--ink-2)}
[data-template="monarch"] .file-drop:hover,[data-template="monarch"] .file-drop.is-drag{border-color:var(--mon-gold);background:var(--mon-gold-soft);color:var(--mon-gold)}
[data-template="monarch"] .postal-check{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 44px rgba(0,0,0,.3);backdrop-filter:none}
[data-template="monarch"] .postal-check__title{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .postal-check__sub{color:var(--muted)}
[data-template="monarch"] .postal-check__pin{background:var(--mon-gold-soft);border:1px solid var(--line-2);color:var(--mon-gold);border-radius:50%}
[data-template="monarch"] .postal-check__row{background:var(--mon-panel-2);border:1px solid var(--line);border-radius:var(--radius)}
[data-template="monarch"] .postal-check__row input{color:var(--ink)}
[data-template="monarch"] .postal-check__row.is-invalid{border-color:var(--brand-deep)}
[data-template="monarch"] .postal-check__hint{background:var(--mon-gold);color:var(--mon-on-gold);border-radius:var(--radius)}
[data-template="monarch"] .review-card,[data-template="monarch"] .reviews-carousel__card{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 44px rgba(0,0,0,.32);color:var(--ink-2)}
[data-template="monarch"] .review-card blockquote{color:var(--ink);font-family:var(--ff-heading);font-style:italic;font-size:22px;line-height:1.4}
[data-template="monarch"] .review-card__author{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .review-card__source,[data-template="monarch"] .reviews-source-label{color:var(--muted)}
[data-template="monarch"] .review-card__avatar{background:var(--mon-gold-soft);color:var(--mon-gold);border:1px solid var(--line-2)}
[data-template="monarch"] .reviews-carousel .hero__stars,[data-template="monarch"] .review-card .hero__stars{color:var(--star)}
[data-template="monarch"] .reviews-carousel__nav,[data-template="monarch"] .card-scroller__nav,[data-template="monarch"] .hero-carousel__nav{background:var(--mon-panel);border:1px solid var(--line-2);color:var(--ink)}
[data-template="monarch"] .reviews-carousel__nav:hover,[data-template="monarch"] .card-scroller__nav:hover,[data-template="monarch"] .hero-carousel__nav:hover{border-color:var(--mon-gold);color:var(--mon-gold)}
[data-template="monarch"] .trusted{background:var(--mon-panel-2);border-block:1px solid var(--line)}
[data-template="monarch"] .trusted__label{color:var(--muted);text-transform:uppercase;letter-spacing:.2em;font-size:11px}
[data-template="monarch"] .trusted__row{gap:40px;flex-wrap:wrap}
[data-template="monarch"] .trusted__row svg{filter:brightness(0) invert(1);opacity:.62}
[data-template="monarch"] .trusted__google-rating,[data-template="monarch"] .trusted__google-score{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .trusted__google-rating .hero__stars,[data-template="monarch"] .trusted__google-rating svg{color:var(--star);filter:none;opacity:1}
[data-template="monarch"] .trusted__google-sub{color:var(--muted)}
[data-template="monarch"] .process__step{background:var(--mon-panel);border:1px solid var(--line);border-left:2px solid var(--mon-gold);border-radius:var(--radius-lg);box-shadow:none}
[data-template="monarch"] .process__step::before{display:none}
[data-template="monarch"] .process__step:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:0 22px 50px rgba(0,0,0,.42)}
[data-template="monarch"] .process__step h3{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .process__step p{color:var(--muted)}
[data-template="monarch"] .process__check{background:var(--mon-gold-soft);border:1px solid var(--line-2);color:var(--mon-gold);border-radius:50%}
[data-template="monarch"] .cta-strip{background:linear-gradient(135deg,var(--brand-deep) 0%,var(--mon-panel-2) 100%);border:1px solid var(--line-2);border-radius:var(--radius-lg);position:relative;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.5)}
[data-template="monarch"] .cta-strip::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 120% at 100% 0%,var(--mon-gold-soft) 0%,transparent 60%);pointer-events:none}
[data-template="monarch"] .cta-strip::after{content:"";position:absolute;left:24px;right:24px;top:14px;height:1px;background:linear-gradient(90deg,transparent,var(--mon-gold),transparent);opacity:.5;pointer-events:none}
[data-template="monarch"] .cta-strip h2{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .cta-strip p{color:var(--ink-2)}
[data-template="monarch"] .cta-strip .btn--primary{background:var(--mon-gold);color:var(--mon-on-gold);border-color:var(--mon-gold)}
[data-template="monarch"] .cta-strip .btn--ghost{background:rgba(246,239,226,0.06);color:var(--ink);border:1px solid var(--line-2)}
[data-template="monarch"] .btn--primary{background:var(--mon-gold);color:var(--mon-on-gold);border:1px solid var(--mon-gold);font-family:var(--ff-body);box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}
[data-template="monarch"] .btn--primary:hover{box-shadow:0 0 0 1px var(--mon-gold),0 14px 34px rgba(201,162,90,.34);transform:translateY(-2px)}
[data-template="monarch"] .btn--primary .btn__arrow{background:var(--mon-on-gold);color:var(--mon-gold)}
[data-template="monarch"] .btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2);font-family:var(--ff-body)}
[data-template="monarch"] .btn--ghost:hover{border-color:var(--mon-gold);color:var(--mon-gold);background:var(--mon-gold-soft)}
[data-template="monarch"] .btn--ghost .btn__arrow{background:var(--mon-gold);color:var(--mon-on-gold)}
[data-template="monarch"] .price-table{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;color:var(--ink-2)}
[data-template="monarch"] .price-table th{background:var(--mon-panel-2);color:var(--mon-gold);font-family:var(--ff-body);text-transform:uppercase;letter-spacing:.14em;font-size:11px;border-bottom:1px solid var(--line)}
[data-template="monarch"] .price-table td{border-bottom:1px solid var(--line)}
[data-template="monarch"] .price-table .num{color:var(--mon-gold);font-family:var(--ff-heading);font-size:18px}
[data-template="monarch"] .sitemap-block{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg)}
[data-template="monarch"] .sitemap-block:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(0,0,0,.4)}
[data-template="monarch"] .sitemap-block h2,[data-template="monarch"] .sitemap-block h3{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .sitemap-block__icon{background:var(--mon-gold-soft);border:1px solid var(--line-2);color:var(--mon-gold);border-radius:50%}
[data-template="monarch"] .sitemap-block a:hover{color:var(--mon-gold)}
[data-template="monarch"] .pagination__btn{background:var(--mon-panel);border:1px solid var(--line);color:var(--ink-2);border-radius:var(--radius)}
[data-template="monarch"] .pagination__btn:hover{border-color:var(--mon-gold);color:var(--mon-gold)}
[data-template="monarch"] .pagination__btn.is-active{background:var(--mon-gold);border-color:var(--mon-gold);color:var(--mon-on-gold)}
[data-template="monarch"] .contact-method{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg)}
[data-template="monarch"] .contact-method__body,[data-template="monarch"] .contact-hero__lead{color:var(--ink-2)}
[data-template="monarch"] .about-check{background:var(--mon-panel);border:1px solid var(--line);border-radius:var(--radius-lg)}
[data-template="monarch"] .about-check__check{background:var(--mon-gold-soft);border:1px solid var(--line-2);color:var(--mon-gold);border-radius:50%}
[data-template="monarch"] .about-check__label{color:var(--ink);font-family:var(--ff-heading)}
[data-template="monarch"] .addr-ac__list{background:var(--mon-panel);border:1px solid var(--line-2);border-radius:var(--radius)}
[data-template="monarch"] .addr-ac__item{color:var(--ink-2)}
[data-template="monarch"] .addr-ac__item.is-active,[data-template="monarch"] .addr-ac__item:hover{background:var(--mon-gold-soft);color:var(--mon-gold)}
[data-template="monarch"] .mobile-call-bar{background:rgba(11,34,28,.95);border-top:1px solid var(--line-2);backdrop-filter:blur(12px)}
[data-template="monarch"] .mobile-call-bar .call,[data-template="monarch"] .mobile-call-bar .btn--primary{background:var(--mon-gold);color:var(--mon-on-gold);border-color:var(--mon-gold)}
[data-template="monarch"] .mobile-call-bar .quote,[data-template="monarch"] .mobile-call-bar .btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2)}

/* — Animation (monarch) — */
@media (prefers-reduced-motion: no-preference){
  @keyframes mon-fade-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  @keyframes mon-rule-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes mon-crest-shimmer{0%{background-position:-150% 0}100%{background-position:250% 0}}
  @keyframes mon-seal-in{from{opacity:0;transform:scale(.82) rotate(-6deg)}to{opacity:1;transform:none}}

  [data-template="monarch"] [data-reveal]{opacity:0}
  [data-template="monarch"] [data-reveal].in{animation:mon-fade-up .7s cubic-bezier(.2,.7,.3,1) forwards}
  [data-template="monarch"] .subhero h1{animation:mon-fade-up .8s cubic-bezier(.2,.7,.3,1) both}

  [data-template="monarch"] .section-head .eyebrow::before,
  [data-template="monarch"] .section-head .eyebrow::after{transform-origin:left center;animation:mon-rule-draw .8s cubic-bezier(.2,.7,.3,1) both}

  [data-template="monarch"] .card,[data-template="monarch"] .article-card,[data-template="monarch"] .article-featured,[data-template="monarch"] .process__step,[data-template="monarch"] .sitemap-block{transition:transform .35s cubic-bezier(.2,.7,.3,1),border-color .35s ease,box-shadow .35s ease}
  [data-template="monarch"] .card::after{transition:border-color .35s ease}

  [data-template="monarch"] .btn--primary,[data-template="monarch"] .btn--ghost{transition:transform .25s cubic-bezier(.2,.7,.3,1),box-shadow .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
  [data-template="monarch"] .btn--primary{position:relative;overflow:hidden;background-image:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.34) 50%,transparent 65%);background-size:250% 100%;background-repeat:no-repeat;background-position:-150% 0}
  [data-template="monarch"] .btn--primary:hover{animation:mon-crest-shimmer 1.1s ease forwards}

  [data-template="monarch"] .card__icon,[data-template="monarch"] .process__check,[data-template="monarch"] .about-check__check{transition:transform .4s cubic-bezier(.2,.7,.3,1)}
  [data-template="monarch"] .card:hover .card__icon,[data-template="monarch"] .process__step:hover .process__check{transform:rotate(8deg) scale(1.06)}

  [data-template="monarch"] .trusted .trusted__google{animation:mon-seal-in .6s cubic-bezier(.2,.9,.3,1) both}

  [data-template="monarch"] .field input:focus,[data-template="monarch"] .field textarea:focus,[data-template="monarch"] .field select:focus{transition:box-shadow .25s ease,border-color .25s ease}
  [data-template="monarch"] .reviews-carousel__nav,[data-template="monarch"] .card-scroller__nav,[data-template="monarch"] .hero-carousel__nav{transition:border-color .25s ease,color .25s ease,transform .25s ease}
}
@media (prefers-reduced-motion: reduce){
  [data-template="monarch"] [data-reveal]{opacity:1}
  [data-template="monarch"] .subhero h1,[data-template="monarch"] .section-head .eyebrow::before,[data-template="monarch"] .section-head .eyebrow::after,[data-template="monarch"] .trusted .trusted__google{animation:none}
  [data-template="monarch"] .section-head .eyebrow::before,[data-template="monarch"] .section-head .eyebrow::after{transform:scaleX(1)}
}


/* ═══ Monarch — CHROME ═══ */
/* ============================================================================
   MONARCH — bespoke chrome (header / hero / sektioner / footer)
   Klassprefix: .mon-  |  Mörk juvelbotten + guld-hårlinjeornament + serif-prakt.
   Färg/typsnitt via CSS-variabler (--brand, --brand-rgb, --brand-deep, --ink,
   --ff-heading) så mallen följer kundens färgtema; --mon-gold är ornament-token.
   ========================================================================== */

[data-template='monarch'] {
  --mon-gold: var(--mon-gold, #c9a25a);
  --mon-gold-soft: var(--mon-gold-soft, rgba(201, 162, 90, 0.14));
  --mon-on-gold: var(--mon-on-gold, #0b221c);
}

/* ---- Heraldisk krest (delas av header/hero/footer) ---------------------- */
.mon-crest {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin-bottom: 4px;
}
.mon-crest > span {
  display: block;
  height: 1px;
  background: var(--mon-gold);
  border-radius: 1px;
}
.mon-crest > span:nth-child(1) {
  width: 8px;
}
.mon-crest > span:nth-child(2) {
  width: 18px;
}
.mon-crest > span:nth-child(3) {
  width: 28px;
}
.mon-crest--hero {
  gap: 3px;
  margin: 0 auto 18px;
}
.mon-crest--hero > span:nth-child(1) {
  width: 10px;
}
.mon-crest--hero > span:nth-child(2) {
  width: 24px;
}
.mon-crest--hero > span:nth-child(3) {
  width: 38px;
}
.mon-crest--lg {
  gap: 3px;
  margin: 0 auto 16px;
}
.mon-crest--lg > span:nth-child(1) {
  width: 10px;
}
.mon-crest--lg > span:nth-child(2) {
  width: 22px;
}
.mon-crest--lg > span:nth-child(3) {
  width: 34px;
}

/* ---- HEADER ------------------------------------------------------------- */
.mon-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 1000;
  height: 76px;
  display: flex;
  align-items: center;
  background: transparent;
  transition: background 0.3s ease, border-color 0.3s ease, backdrop-filter 0.3s ease;
  border-bottom: 1px solid transparent;
}
.mon-header.is-scrolled {
  background: rgba(11, 34, 28, 0.9);
  -webkit-backdrop-filter: blur(14px) saturate(130%);
  backdrop-filter: blur(14px) saturate(130%);
  border-bottom: 1px solid var(--line, rgba(201, 162, 90, 0.22));
}
.mon-header.is-scrolled::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--mon-gold), transparent);
  opacity: 0.7;
}
.mon-header__inner {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
}

/* Centrerat wordmark — signaturen */
.mon-brand {
  justify-self: center;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  line-height: 1;
}
.mon-brand__logo {
  width: auto;
  height: 30px;
}
.mon-brand__name {
  font-family: var(--ff-heading);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ink);
}

/* Vänster-nav */
.mon-nav {
  justify-self: start;
  display: flex;
  align-items: center;
  gap: 30px;
}
.mon-nav__link {
  position: relative;
  font-family: var(--ff-body);
  font-size: 12.5px;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--ink-2);
  text-decoration: none;
  padding: 6px 0;
  transition: color 0.25s ease;
}
.mon-nav__link::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  right: 50%;
  height: 1px;
  background: var(--mon-gold);
  transition: left 0.3s cubic-bezier(0.2, 0.7, 0.3, 1), right 0.3s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.mon-nav__link:hover {
  color: var(--ink);
}
.mon-nav__link:hover::after {
  left: 0;
  right: 0;
}

/* Höger — telefon + guld-CTA */
.mon-header__right {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: 22px;
}
.mon-header__phone {
  font-family: var(--ff-heading);
  font-size: 15px;
  color: var(--ink);
  text-decoration: none;
  transition: color 0.25s ease;
}
.mon-header__phone:hover {
  color: var(--mon-gold);
}
.mon-header__cta {
  background: var(--mon-gold);
  color: var(--mon-on-gold);
  font-family: var(--ff-body);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 12px;
  padding: 11px 22px;
  border-radius: 2px;
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28);
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.mon-header__cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 0 1px var(--mon-gold), 0 12px 28px rgba(201, 162, 90, 0.32);
}

/* Burger (mobil) — ren CSS-glyf (Icon-mappen saknar 'menu') */
.mon-burger {
  display: none;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line-2, rgba(201, 162, 90, 0.42));
  border-radius: 2px;
  background: transparent;
  color: var(--mon-gold);
  cursor: pointer;
  position: relative;
}
.mon-burger__lines {
  position: relative;
  display: block;
  width: 18px;
  height: 12px;
}
.mon-burger__lines > span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 1.5px;
  background: var(--mon-gold);
  border-radius: 1px;
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.3, 1), opacity 0.2s ease;
}
.mon-burger__lines > span:nth-child(1) {
  top: 0;
}
.mon-burger__lines > span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.mon-burger__lines > span:nth-child(3) {
  bottom: 0;
}
.mon-burger.is-open .mon-burger__lines > span:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.mon-burger.is-open .mon-burger__lines > span:nth-child(2) {
  opacity: 0;
}
.mon-burger.is-open .mon-burger__lines > span:nth-child(3) {
  bottom: auto;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}

/* Fullskärms-drawer */
.mon-overlay {
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 72px 24px 48px;
  background: var(--bg, #0b221c);
  background-image: radial-gradient(120% 80% at 50% -10%, rgba(110, 27, 46, 0.4) 0%, transparent 55%);
  text-align: center;
}
.mon-overlay__close {
  position: absolute;
  top: 22px;
  right: 24px;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line-2, rgba(201, 162, 90, 0.42));
  border-radius: 2px;
  background: transparent;
  color: var(--mon-gold);
  cursor: pointer;
  font-size: 26px;
  line-height: 1;
}
.mon-overlay__nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 420px;
  margin-top: 18px;
}
.mon-overlay__link {
  font-family: var(--ff-heading);
  font-size: 28px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
  padding: 16px 0;
  width: 100%;
  transition: color 0.25s ease;
}
.mon-overlay__link + .mon-overlay__link {
  border-top: 1px solid var(--line, rgba(201, 162, 90, 0.22));
}
.mon-overlay__link:hover {
  color: var(--mon-gold);
}
.mon-overlay__foot {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.mon-overlay__phone {
  font-family: var(--ff-heading);
  font-size: 22px;
  color: var(--mon-gold);
  text-decoration: none;
}
.mon-overlay__cta {
  background: var(--mon-gold);
  color: var(--mon-on-gold);
  font-family: var(--ff-body);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 12px;
  padding: 13px 30px;
  border-radius: 2px;
  text-decoration: none;
}

/* ---- HERO --------------------------------------------------------------- */
.mon-hero {
  position: relative;
  overflow: hidden;
  padding: 150px 24px 96px;
  text-align: center;
}
.mon-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: radial-gradient(120% 80% at 50% -10%, rgba(var(--brand-rgb, 110, 27, 46), 0.4) 0%, transparent 60%),
    radial-gradient(80% 60% at 50% 0%, var(--mon-gold-soft) 0%, transparent 55%);
}
.mon-hero__video,
.mon-hero__poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.3;
}
.mon-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(11, 34, 28, 0.4) 0%,
    rgba(11, 34, 28, 0.86) 70%,
    var(--bg, #0b221c) 100%
  );
}
.mon-hero__inner {
  position: relative;
  z-index: 2;
  max-width: 880px;
  margin: 0 auto;
}
.mon-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  text-transform: uppercase;
  letter-spacing: 0.26em;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--mon-gold);
}
.mon-hero__eyebrow::before,
.mon-hero__eyebrow::after {
  content: '';
  width: 40px;
  height: 1px;
  background: var(--mon-gold);
  opacity: 0.8;
}
.mon-hero__title {
  margin: 20px auto 0;
  font-family: var(--ff-heading);
  font-weight: 600;
  font-size: clamp(46px, 7vw, 92px);
  line-height: 1.02;
  letter-spacing: 0.004em;
  color: var(--ink);
}
.mon-hero__title em {
  font-style: normal;
  color: var(--mon-gold);
}
.mon-hero__title strong {
  font-weight: 700;
}
.mon-hero__lead {
  margin: 22px auto 0;
  max-width: 56ch;
  font-size: 19px;
  line-height: 1.7;
  color: var(--ink-2);
}
.mon-hero__cta-row {
  margin-top: 32px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
}
.mon-hero__rating {
  margin-top: 26px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--ink-2);
  font-size: 14px;
}
.mon-hero__rating .hero__stars {
  color: var(--star, #c9a25a);
}
.mon-hero__facts {
  margin: 34px auto 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px 40px;
}
.mon-hero__facts li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
}
.mon-hero__facts strong {
  font-family: var(--ff-heading);
  font-size: 26px;
  font-weight: 600;
  color: var(--mon-gold);
}
.mon-hero__facts span {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--muted);
}
.mon-hero__trust {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 28px;
  opacity: 0.7;
  filter: brightness(0) invert(1);
}
.mon-hero__postal {
  max-width: 540px;
  margin: 38px auto 0;
}
.mon-hero__divider {
  position: relative;
  display: block;
  width: min(440px, 80%);
  height: 1px;
  margin: 56px auto 0;
  background: linear-gradient(90deg, transparent, var(--line-2, rgba(201, 162, 90, 0.42)), transparent);
}
.mon-hero__divider::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 6px;
  height: 6px;
  background: var(--mon-gold);
  transform: translate(-50%, -50%) rotate(45deg);
}

/* ---- TRUST-BAND --------------------------------------------------------- */
.mon-trust {
  border-block: 1px solid var(--line, rgba(201, 162, 90, 0.22));
  padding: 40px 24px;
  text-align: center;
}
.mon-trust__inner {
  max-width: 1200px;
  margin: 0 auto;
}

/* ---- SEKTIONER ---------------------------------------------------------- */
.mon-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
.mon-section__head {
  max-width: 760px;
  margin: 0 auto 48px;
  text-align: center;
}
.mon-section__head h2 {
  font-family: var(--ff-heading);
  font-weight: 600;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.05;
  letter-spacing: 0.004em;
  color: var(--ink);
  margin: 16px 0 0;
}
.mon-section__head > p {
  margin: 16px auto 0;
  color: var(--ink-2);
  font-size: 17px;
  line-height: 1.7;
}

/* Tjänstekort — symmetriskt rutnät (kortens guld-hover styrs av innerCss .card) */
.mon-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.mon-cards .card {
  display: flex;
  flex-direction: column;
}
.mon-cards .card__image {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}
.mon-cards .card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mon-cards .card__icon {
  width: 56px;
  height: 56px;
  margin: 28px 28px 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mon-cards .card__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 26px 28px 28px;
}
.mon-cards .card__body h3 {
  margin: 0;
}
.mon-cards .card__body p {
  margin: 0;
  line-height: 1.6;
}
.mon-cards .card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  text-decoration: none;
  transition: color 0.25s ease, gap 0.25s ease;
}
.mon-cards .card:hover .card__link {
  gap: 12px;
}

/* Stats-band med guld-vertikal-avdelare */
.mon-band-section .container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
}
.mon-band {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  text-align: center;
  background: var(--mon-panel, #103128);
  border: 1px solid var(--line, rgba(201, 162, 90, 0.22));
  border-radius: var(--radius-lg, 4px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
  overflow: hidden;
}
.mon-band__item {
  padding: 38px 22px;
  position: relative;
}
.mon-band__item + .mon-band__item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 24px;
  bottom: 24px;
  width: 1px;
  background: linear-gradient(180deg, transparent, var(--line-2, rgba(201, 162, 90, 0.42)), transparent);
}
.mon-band__num {
  font-family: var(--ff-heading);
  font-weight: 600;
  font-size: clamp(34px, 4.5vw, 52px);
  line-height: 1;
  color: var(--mon-gold);
}
.mon-band__lab {
  margin-top: 8px;
  font-size: 12.5px;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--muted);
}

/* Om oss — centrerad ingress */
.mon-about__intro {
  font-family: var(--ff-heading);
  font-style: italic;
  font-size: clamp(20px, 2.4vw, 27px);
  line-height: 1.5;
  color: var(--ink-2);
}

/* USP — symmetriskt rutnät */
.mon-usp {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.mon-usp__item {
  text-align: center;
  padding: 32px 26px;
  background: var(--mon-panel, #103128);
  border: 1px solid var(--line, rgba(201, 162, 90, 0.22));
  border-radius: var(--radius-lg, 4px);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.3, 1), border-color 0.35s ease, box-shadow 0.35s ease;
}
.mon-usp__item:hover {
  transform: translateY(-4px);
  border-color: var(--line-2, rgba(201, 162, 90, 0.42));
  box-shadow: 0 30px 64px rgba(0, 0, 0, 0.5);
}
.mon-usp__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-bottom: 18px;
  border-radius: 50%;
  background: var(--mon-gold-soft);
  border: 1px solid var(--line-2, rgba(201, 162, 90, 0.42));
  color: var(--mon-gold);
}
.mon-usp__item h3 {
  margin: 0 0 10px;
  font-family: var(--ff-heading);
  font-size: 22px;
  color: var(--ink);
}
.mon-usp__item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

/* Process — numrerade steg */
.mon-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 24px;
}
.mon-step {
  position: relative;
  padding: 30px 26px;
  background: var(--mon-panel, #103128);
  border: 1px solid var(--line, rgba(201, 162, 90, 0.22));
  border-top: 2px solid var(--mon-gold);
  border-radius: var(--radius-lg, 4px);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
  transition: transform 0.35s cubic-bezier(0.2, 0.7, 0.3, 1), border-color 0.35s ease, box-shadow 0.35s ease;
}
.mon-step:hover {
  transform: translateY(-3px);
  box-shadow: 0 26px 56px rgba(0, 0, 0, 0.46);
}
.mon-step__num {
  font-family: var(--ff-heading);
  font-size: 30px;
  font-weight: 600;
  color: var(--mon-gold);
  letter-spacing: 0.04em;
}
.mon-step h3 {
  margin: 12px 0 8px;
  font-family: var(--ff-heading);
  font-size: 21px;
  color: var(--ink);
}
.mon-step p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

/* ---- FOOTER ------------------------------------------------------------- */
.mon-footer {
  position: relative;
  background: var(--mon-panel-2, #0c261f);
  border-top: 1px solid var(--line-2, rgba(201, 162, 90, 0.42));
  padding: 80px 40px 36px;
}
.mon-footer::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--mon-gold), transparent);
  opacity: 0.7;
}
.mon-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.mon-footer__colophon {
  text-align: center;
  margin-bottom: 56px;
}
.mon-footer__wordmark {
  font-family: var(--ff-heading);
  font-weight: 600;
  font-size: clamp(34px, 6vw, 64px);
  letter-spacing: 0.02em;
  line-height: 1.05;
  color: var(--ink);
}
.mon-footer__tagline {
  max-width: 480px;
  margin: 14px auto 0;
  font-family: var(--ff-heading);
  font-style: italic;
  font-size: 18px;
  line-height: 1.5;
  color: var(--ink-2);
}
.mon-divider {
  position: relative;
  display: block;
  width: min(360px, 70%);
  height: 1px;
  margin: 28px auto 0;
  background: linear-gradient(90deg, transparent, var(--line-2, rgba(201, 162, 90, 0.42)), transparent);
}
.mon-divider::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 6px;
  height: 6px;
  background: var(--mon-gold);
  transform: translate(-50%, -50%) rotate(45deg);
}
.mon-footer__cols {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 36px 28px;
  padding-bottom: 48px;
}
.mon-footer__col h4 {
  margin: 0 0 16px;
  font-family: var(--ff-body);
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--muted);
  font-weight: 600;
}
.mon-footer__link,
.mon-footer__addr {
  display: block;
  color: var(--ink-2);
  text-decoration: none;
  font-size: 14.5px;
  line-height: 1.5;
  margin-bottom: 10px;
}
.mon-footer__link {
  position: relative;
  width: max-content;
  max-width: 100%;
  transition: color 0.25s ease;
}
.mon-footer__link::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 1px;
  background: var(--mon-gold);
  transition: width 0.3s ease;
}
.mon-footer__link:hover {
  color: var(--mon-gold);
}
.mon-footer__link:hover::after {
  width: 100%;
}
.mon-footer__bottom {
  border-top: 1px solid var(--line, rgba(201, 162, 90, 0.22));
  padding-top: 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.mon-footer__copy {
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.12em;
  color: var(--muted);
}
.mon-footer__policy {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
}
.mon-footer__policy a {
  color: var(--muted);
  text-decoration: none;
  font-size: 12.5px;
  transition: color 0.25s ease;
}
.mon-footer__policy a:hover {
  color: var(--mon-gold);
}

/* ---- RESPONSIVT --------------------------------------------------------- */
@media (max-width: 980px) {
  .mon-header__inner {
    grid-template-columns: 1fr auto;
  }
  .mon-brand {
    justify-self: start;
  }
  .mon-nav,
  .mon-header__phone,
  .mon-header__cta {
    display: none;
  }
  .mon-burger {
    display: inline-flex;
    justify-self: end;
  }
  .mon-cards,
  .mon-usp {
    grid-template-columns: repeat(2, 1fr);
  }
  .mon-hero {
    padding: 128px 22px 80px;
  }
}

@media (max-width: 640px) {
  .mon-header__inner {
    padding: 0 22px;
  }
  .mon-cards,
  .mon-usp {
    grid-template-columns: 1fr;
  }
  .mon-band {
    grid-template-columns: 1fr;
  }
  .mon-band__item + .mon-band__item::before {
    left: 24px;
    right: 24px;
    top: 0;
    bottom: auto;
    width: auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--line-2, rgba(201, 162, 90, 0.42)), transparent);
  }
  .mon-footer {
    padding: 64px 24px 32px;
  }
  .mon-footer__cols {
    grid-template-columns: repeat(2, 1fr);
  }
  .mon-footer__bottom {
    justify-content: center;
    text-align: center;
  }
}

@media (max-width: 460px) {
  .mon-footer__cols {
    grid-template-columns: 1fr;
  }
}

/* ---- RÖRELSE (reduced-motion-säkrad) ------------------------------------ */
@media (prefers-reduced-motion: no-preference) {
  @keyframes mon-chrome-fade-up {
    from {
      opacity: 0;
      transform: translateY(16px);
    }
    to {
      opacity: 1;
      transform: none;
    }
  }
  .mon-hero__inner > * {
    opacity: 0;
    animation: mon-chrome-fade-up 0.7s cubic-bezier(0.2, 0.7, 0.3, 1) forwards;
  }
  .mon-hero__eyebrow {
    animation-delay: 0.05s;
  }
  .mon-hero__title {
    animation-delay: 0.12s;
  }
  .mon-hero__lead {
    animation-delay: 0.2s;
  }
  .mon-hero__cta-row {
    animation-delay: 0.28s;
  }
  .mon-hero__rating,
  .mon-hero__facts,
  .mon-hero__trust,
  .mon-hero__postal,
  .mon-hero__divider {
    animation-delay: 0.34s;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mon-hero__inner > * {
    opacity: 1;
    animation: none;
  }
  .mon-header,
  .mon-nav__link::after,
  .mon-footer__link::after {
    transition: none;
  }
}



/* ═══ QA-FIXAR (monarch) ═══ */
/* [låg] html[data-template="monarch"] .subhero__crumbs span */
html[data-template="monarch"] .subhero__crumbs span{color:var(--muted)}
