:root{--ar-navy-900: #182a49;--ar-navy-950: #101b2e;--ar-sky-50: #eaf7fe;--ar-sky-300: #90d6fc;--ar-sky-400: #63c2f2;--ar-sky-600: #00749e;--ar-neutral-0: #fcfcfc;--ar-neutral-50: #f6f6f6;--ar-neutral-100: #efefef;--ar-neutral-200: #e4e4e4;--ar-neutral-300: #e0e0e0;--ar-neutral-400: #d3d1d1;--ar-neutral-500: #cccccc;--ar-neutral-600: #505050;--ar-neutral-900: #222222;--ar-success-500: #2f9e63;--ar-error-500: #d64545;--ar-color-bg-page: var(--ar-neutral-0);--ar-color-bg-surface: var(--ar-neutral-50);--ar-color-bg-brand: var(--ar-navy-900);--ar-color-bg-brand-hover: var(--ar-navy-950);--ar-color-bg-accent: var(--ar-sky-300);--ar-color-bg-accent-hover: var(--ar-sky-400);--ar-color-bg-accent-subtle: var(--ar-sky-50);--ar-color-text-primary: var(--ar-neutral-900);--ar-color-text-secondary: var(--ar-neutral-600);--ar-color-text-inverse: var(--ar-neutral-50);--ar-color-text-inverse-secondary: var(--ar-neutral-500);--ar-color-text-brand-primary: var(--ar-sky-300);--ar-color-text-brand-secondary: var(--ar-navy-900);--ar-color-border-default: var(--ar-neutral-300);--ar-color-border-subtle: var(--ar-neutral-200);--ar-color-border-focus: var(--ar-sky-300);--ar-color-border-brand: var(--ar-navy-900);--ar-color-icon-primary: var(--ar-neutral-900);--ar-color-icon-brand-primary: var(--ar-navy-900);--ar-color-icon-brand-secondary: var(--ar-sky-300);--ar-btn-primary-bg: var(--ar-navy-900);--ar-btn-primary-bg-hover: var(--ar-navy-950);--ar-btn-primary-text: var(--ar-neutral-50);--ar-btn-secondary-bg: var(--ar-neutral-50);--ar-btn-secondary-bg-hover: var(--ar-neutral-300);--ar-btn-secondary-text: var(--ar-neutral-900);--ar-btn-outlined-text: var(--ar-navy-900);--ar-btn-outlined-border: var(--ar-neutral-300);--ar-btn-outlined-bg-hover: var(--ar-sky-50);--ar-btn-outlined-inverse-text: var(--ar-neutral-50);--ar-btn-outlined-inverse-border: var(--ar-neutral-300);--ar-btn-outlined-inverse-bg-hover: rgba(144, 214, 252, 0.2);--ar-space-4: 4px;--ar-space-8: 8px;--ar-space-12: 12px;--ar-space-16: 16px;--ar-space-24: 24px;--ar-space-32: 32px;--ar-space-40: 40px;--ar-space-48: 48px;--ar-space-64: 64px;--ar-space-80: 80px;--ar-space-96: 96px;--ar-space-128: 128px;--ar-page-padding-desktop: var(--ar-space-128);--ar-page-padding-tablet: var(--ar-space-48);--ar-page-padding-mobile: var(--ar-space-24);--ar-section-spacing-desktop: var(--ar-space-96);--ar-section-spacing-tablet: var(--ar-space-64);--ar-section-spacing-mobile: var(--ar-space-48);--ar-card-gap-desktop: var(--ar-space-32);--ar-card-gap-tablet: var(--ar-space-24);--ar-card-gap-mobile: var(--ar-space-16);--ar-container-max: 1184px;--ar-container-width-tablet: 738px;--ar-container-width-mobile: 342px;--ar-nav-padding-desktop: var(--ar-space-64);--ar-nav-padding-tablet: var(--ar-space-48);--ar-nav-padding-mobile: var(--ar-space-24);--ar-radius-sm: 8px;--ar-radius-md: 12px;--ar-radius-lg: 16px;--ar-radius-xl: 24px;--ar-radius-pill: 999px;--ar-shadow-sm: 0 1px 2px rgba(22, 22, 22, 0.04), 0 1px 3px rgba(22, 22, 22, 0.03);--ar-shadow-lg: 0 12px 24px -4px rgba(22, 22, 22, 0.08), 0 4px 8px -2px rgba(22, 22, 22, 0.05)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:#f6f6f6;color:var(--ar-color-text-primary);margin:0}img{max-width:100%;display:block !important;}a{color:inherit}button{font:inherit}.ar-container{max-width:calc(var(--ar-container-max) + 2*var(--ar-page-padding-desktop));margin-inline:auto;padding-inline:var(--ar-page-padding-desktop)}@media(max-width: 1199px){.ar-container{padding-inline:var(--ar-page-padding-tablet)}}@media(max-width: 767px){.ar-container{padding-inline:var(--ar-page-padding-mobile)}}.ar-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ar-color-border-focus);outline-offset:2px}body{font-family:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{margin:0;text-wrap:balance}p{margin:0}.ar-text-display-h1{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-style:italic;font-size:58px;line-height:1.1;letter-spacing:0}@media(max-width: 1199px){.ar-text-display-h1{font-size:44px;line-height:1.12}}@media(max-width: 767px){.ar-text-display-h1{font-size:34px;line-height:1.16}}.ar-text-display-large{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-style:italic;font-size:48px;line-height:1.1}@media(max-width: 1199px){.ar-text-display-large{font-size:38px;line-height:1.12}}@media(max-width: 767px){.ar-text-display-large{font-size:30px;line-height:1.16}}.ar-text-display-medium{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-style:italic;font-size:32px;line-height:1.2;letter-spacing:.5px}@media(max-width: 1199px){.ar-text-display-medium{font-size:26px;line-height:1.22;letter-spacing:.4px}}@media(max-width: 767px){.ar-text-display-medium{font-size:22px;line-height:1.24;letter-spacing:.3px}}.ar-text-display-small{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-style:italic;font-size:24px;line-height:28px;letter-spacing:.5px}@media(max-width: 1199px){.ar-text-display-small{font-size:22px;line-height:26px;letter-spacing:.4px}}@media(max-width: 767px){.ar-text-display-small{font-size:20px;line-height:24px;letter-spacing:.3px}}.ar-text-heading-h2{font-family:"DM Sans",sans-serif;font-weight:700;font-size:48px;line-height:1.1}@media(max-width: 1199px){.ar-text-heading-h2{font-size:36px;line-height:1.14}}@media(max-width: 767px){.ar-text-heading-h2{font-size:28px;line-height:1.18}}.ar-text-heading-h3{font-family:"DM Sans",sans-serif;font-weight:700;font-size:40px;line-height:48px}@media(max-width: 1199px){.ar-text-heading-h3{font-size:32px;line-height:40px}}@media(max-width: 767px){.ar-text-heading-h3{font-size:26px;line-height:34px}}.ar-text-heading-h4{font-family:"DM Sans",sans-serif;font-weight:600;font-size:28px;line-height:36px}@media(max-width: 1199px){.ar-text-heading-h4{font-size:24px;line-height:32px}}@media(max-width: 767px){.ar-text-heading-h4{font-size:22px;line-height:28px}}.ar-text-heading-h5{font-family:"DM Sans",sans-serif;font-weight:600;font-size:24px;line-height:1.1}@media(max-width: 1199px){.ar-text-heading-h5{font-size:22px;line-height:1.14}}@media(max-width: 767px){.ar-text-heading-h5{font-size:20px;line-height:1.18}}.ar-text-heading-h6{font-family:"DM Sans",sans-serif;font-weight:600;font-size:20px;line-height:28px}@media(max-width: 1199px){.ar-text-heading-h6{font-size:19px;line-height:26px}}@media(max-width: 767px){.ar-text-heading-h6{font-size:18px;line-height:24px}}.ar-text-heading-h7{font-family:"DM Sans",sans-serif;font-weight:600;font-size:18px;line-height:1.4}@media(max-width: 1199px){.ar-text-heading-h7{font-size:17px;line-height:1.4}}@media(max-width: 767px){.ar-text-heading-h7{font-size:16px;line-height:1.4}}.ar-text-body-large{font-family:"DM Sans",sans-serif;font-weight:400;font-size:20px;line-height:32px}@media(max-width: 1199px){.ar-text-body-large{font-size:18px;line-height:28px}}@media(max-width: 767px){.ar-text-body-large{font-size:17px;line-height:26px}}.ar-text-body-default{font-family:"DM Sans",sans-serif;font-weight:400;font-size:16px;line-height:24px}.ar-text-body-small{font-family:"DM Sans",sans-serif;font-weight:400;font-size:14px;line-height:20px}@media(max-width: 767px){.ar-text-body-small{font-size:13px;line-height:18px}}.ar-text-label-button{font-family:"DM Sans",sans-serif;font-weight:500;font-size:16px;line-height:24px;letter-spacing:.16px}@media(max-width: 767px){.ar-text-label-button{font-size:15px;line-height:22px}}.ar-text-label-caption{font-family:"DM Sans",sans-serif;font-weight:500;font-size:14px;line-height:16px;letter-spacing:.56px;text-transform:none}@media(max-width: 1199px){.ar-text-label-caption{font-size:13px;line-height:16px;letter-spacing:.455px}}@media(max-width: 767px){.ar-text-label-caption{font-size:12px;line-height:16px;letter-spacing:.36px}}.ar-btn{display:inline-flex !important;align-items:center;justify-content:center;gap:var(--ar-space-8);padding:10px var(--ar-space-24);border-radius:var(--ar-radius-md);border:1px solid rgba(0,0,0,0);font-family:"DM Sans",sans-serif;font-weight:500;font-size:16px;line-height:24px;letter-spacing:.16px;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;min-height:44px}.ar-btn svg{width:18px;height:18px;flex:none}@media(max-width: 767px){.ar-btn{font-size:15px;line-height:22px}}.ar-btn--primary{background:var(--ar-btn-primary-bg);color:var(--ar-btn-primary-text)}.ar-btn--primary:hover{background:var(--ar-btn-primary-bg-hover)}.ar-btn--secondary{background:var(--ar-btn-secondary-bg);color:var(--ar-btn-secondary-text)}.ar-btn--secondary:hover{background:var(--ar-btn-secondary-bg-hover)}.ar-btn--outlined{background:rgba(0,0,0,0);color:var(--ar-btn-outlined-text);border-color:var(--ar-btn-outlined-border)}.ar-btn--outlined:hover{background:var(--ar-btn-outlined-bg-hover)}.ar-btn--outlined-inverse{background:rgba(0,0,0,0);color:var(--ar-btn-outlined-inverse-text);border-color:var(--ar-btn-outlined-inverse-border)}.ar-btn--outlined-inverse:hover{background:var(--ar-btn-outlined-inverse-bg-hover)}.ar-btn:disabled,.ar-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.ar-nav{position:absolute;top:0;left:0;right:0;z-index:40}.ar-nav--static{position:relative;background:var(--ar-navy-950)}.ar-nav__bar{display:flex !important;align-items:center;justify-content:space-between;min-height:64px;padding-inline:var(--ar-nav-padding-desktop);padding-block:16px}@media(max-width: 1199px){.ar-nav__bar{padding-inline:32px !important}}@media(max-width: 767px){.ar-nav__bar{padding-inline:16px !important}}.ar-nav__logo{display:inline-flex !important;align-items:center;line-height:0}.ar-nav__logo img{height:29px !important;width:58px !important;aspect-ratio:auto !important;}.ar-nav__logo-text{color:var(--ar-color-text-inverse);line-height:1}.ar-nav__menu,.ar-nav__list{font-family:"DM Sans",sans-serif;font-weight:500;font-size:16px;line-height:24px;letter-spacing:.16px}.ar-nav__list{display:flex !important;align-items:center;gap:var(--ar-space-24);list-style:none;margin:0;padding:0}.ar-nav__list a{color:var(--ar-color-text-inverse);text-decoration:none;padding-bottom:var(--ar-space-4);border-bottom:1px solid rgba(0,0,0,0)}.ar-nav__list a{text-decoration-line:underline !important;text-decoration-color:transparent !important;text-underline-offset:4px !important;text-decoration-thickness:1px !important;transition:text-decoration-color .2s ease !important;}.ar-nav__list a:hover,.ar-nav__list a.is-active{color:var(--ar-color-text-inverse) !important;text-decoration-color:var(--ar-color-text-inverse) !important;}.ar-nav__list .ar-nav__list-item--current>a{border-bottom-color:var(--ar-color-border-default)}.ar-nav__toggle{display:none !important;flex-direction:column !important;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;background:rgba(0,0,0,0);border:none;cursor:pointer}button.ar-nav__toggle:hover,button.ar-nav__toggle:focus,button.ar-nav__toggle:active{background:rgba(0,0,0,0) !important;border-color:transparent !important;outline:none !important;box-shadow:none !important;}.ar-nav__toggle span{display:block !important;width:22px;height:2px;border-radius:1px;background:var(--ar-color-text-inverse);transition:transform .2s ease,opacity .2s ease}.ar-nav__toggle span+span{margin-top:5px !important}.ar-nav__mobile-panel{display:none !important;}@media(max-width: 1199px){.ar-nav__menu{display:none !important;}.ar-nav__toggle{display:flex !important;}.ar-nav__mobile-panel{display:block !important;max-height:0;overflow:hidden;background:var(--ar-color-bg-brand);transition:max-height .25s ease;padding:0 !important;border:none !important}.ar-nav[data-open=true] .ar-nav__mobile-panel{max-height:400px}.ar-nav[data-open=true] .ar-nav__toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.ar-nav[data-open=true] .ar-nav__toggle span:nth-child(2){opacity:0}.ar-nav[data-open=true] .ar-nav__toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.ar-nav__mobile-list{list-style:none;margin:0;padding:var(--ar-space-8) var(--ar-page-padding-mobile) var(--ar-space-24);display:flex !important;flex-direction:column !important;gap:var(--ar-space-16);font-family:"DM Sans",sans-serif;font-weight:500;font-size:16px}.ar-nav__mobile-list a{color:var(--ar-color-text-inverse);text-decoration:none;display:flex !important;align-items:center;min-height:44px}}.ar-footer{background:var(--ar-navy-950);color:var(--ar-color-text-inverse);padding-top:var(--ar-space-64)}@media(max-width: 1199px){.ar-footer{padding-top:var(--ar-space-48)}}.ar-footer>.ar-container{max-width:100%;padding-inline:64px}@media(max-width: 1199px){.ar-footer>.ar-container{padding-inline:32px}}@media(max-width: 767px){.ar-footer>.ar-container{padding-inline:16px}}.ar-footer__grid{display:grid !important;grid-template-columns:minmax(0, 420px) 1fr !important;gap:var(--ar-space-64);align-items:start}@media(max-width: 1199px){.ar-footer__grid{grid-template-columns:1fr !important;gap:var(--ar-space-32)}}.ar-footer__brand{display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}.ar-footer__logo{display:inline-flex !important;align-items:center;gap:var(--ar-space-12);text-decoration:none}.ar-footer__logo img{height:29px;width:auto}.ar-footer__wordmark{color:var(--ar-color-text-brand-primary) !important}.ar-footer__tagline{color:var(--ar-color-text-inverse);max-width:38ch}.ar-footer__cards{display:flex !important;gap:var(--ar-space-64);justify-content:flex-end}@media(max-width: 1199px){.ar-footer__cards{justify-content:flex-start;gap:var(--ar-space-32)}}@media(max-width: 767px){.ar-footer__cards{flex-direction:column !important;gap:var(--ar-space-32)}}.ar-footer__card-label{color:var(--ar-color-text-brand-primary) !important;margin:0 0 var(--ar-space-16)}.ar-footer__contact-lines{display:flex !important;flex-direction:column !important;gap:var(--ar-space-8);margin-bottom:var(--ar-space-16)}.ar-footer__contact-lines a{color:var(--ar-color-text-inverse);text-decoration:none}.ar-footer__contact-lines a{text-decoration-line:underline !important;text-decoration-color:transparent !important;text-underline-offset:4px !important;text-decoration-thickness:1px !important;transition:text-decoration-color .2s ease !important;}.ar-footer__contact-lines a:hover{color:var(--ar-color-text-inverse) !important;text-decoration-color:var(--ar-color-text-inverse) !important;}.ar-footer__social{display:inline-flex !important;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ar-radius-pill);background:rgba(246,246,246,.1);color:var(--ar-color-text-inverse)}.ar-footer__social:hover{background:rgba(246,246,246,.18)}.ar-footer__nav-list{list-style:none;margin:0;padding:0;display:flex !important;flex-direction:column !important;gap:var(--ar-space-8)}.ar-footer__nav-list a{color:var(--ar-color-text-inverse);text-decoration:none}.ar-footer__nav-list a{text-decoration-line:underline !important;text-decoration-color:transparent !important;text-underline-offset:4px !important;text-decoration-thickness:1px !important;transition:text-decoration-color .2s ease !important;}.ar-footer__nav-list a:hover,.ar-footer__nav-list a.is-active{color:var(--ar-color-text-inverse) !important;text-decoration-color:var(--ar-color-text-inverse) !important;}.ar-footer__bottom{margin-top:var(--ar-space-64);padding-block:var(--ar-space-24);border-top:1px solid rgba(246,246,246,.12);display:flex !important;justify-content:space-between;gap:var(--ar-space-16);color:var(--ar-color-text-inverse-secondary)}.ar-footer__bottom a{color:var(--ar-color-text-inverse-secondary)}.ar-footer__bottom a:hover{color:var(--ar-color-text-inverse)}@media(max-width: 1199px){.ar-footer__bottom{margin-top:var(--ar-space-48)}}@media(max-width: 767px){.ar-footer__bottom{flex-direction:column !important;gap:var(--ar-space-8)}}.ar-section{padding-block:var(--ar-section-spacing-desktop)}@media(max-width: 1199px){.ar-section{padding-block:var(--ar-section-spacing-tablet)}}@media(max-width: 767px){.ar-section{padding-block:var(--ar-section-spacing-mobile)}}.ar-eyebrow{color:var(--ar-color-text-brand-primary);margin:0 0 var(--ar-space-8)}.ar-eyebrow--dark{color:var(--ar-color-text-brand-secondary)}.ar-hero{position:relative;background-color:var(--ar-color-bg-brand);background-size:cover;background-position:center;min-height:100vh;min-height:100dvh;display:flex !important;}.ar-hero__inner{width:100%;padding-inline:var(--ar-nav-padding-desktop);padding-top:176px;padding-bottom:var(--ar-space-48);display:flex !important;flex-direction:column !important;justify-content:flex-end}@media(max-width: 1199px){.ar-hero__inner{padding-inline:32px !important;padding-top:140px;gap:var(--ar-space-32)}}@media(max-width: 767px){.ar-hero__inner{padding-inline:16px !important;padding-top:112px;gap:var(--ar-space-24)}.ar-nav{padding-inline:0 !important}.ar-hero{padding-inline:0 !important}}.ar-hero__text{max-width:576px;display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}@media(max-width: 767px){.ar-hero__text{max-width:none}}.ar-hero__eyebrow{color:var(--ar-color-text-inverse);margin:0}.ar-hero__headline{color:var(--ar-color-text-brand-primary);margin:0}.ar-hero__desc{color:var(--ar-color-text-inverse);max-width:46ch;margin:0}.ar-hero__buttons{display:flex !important;gap:var(--ar-space-16);flex-wrap:wrap !important;margin-top:var(--ar-space-8)}.ar-hero__badges{display:flex !important;gap:var(--ar-space-32);flex-wrap:wrap !important;align-self:flex-end;background:rgba(16,27,46,.65);border:1px solid rgba(255,255,255,.12);padding:var(--ar-space-16) var(--ar-space-24);border-radius:var(--ar-radius-md)}@media(min-width: 768px) and (max-width: 1199px){.ar-hero__badges{align-self:flex-end !important;--width:max-content !important;width:max-content !important;flex-wrap:nowrap !important;}}@media(max-width: 767px){.ar-hero__badges{flex-direction:column !important;align-items:flex-start;gap:var(--ar-space-8)}}.ar-hero__badge{display:flex !important;align-items:center;gap:var(--ar-space-8);color:var(--ar-color-text-inverse);margin:0}.ar-hero__badge svg{color:var(--ar-color-text-brand-primary);flex:none;width:20px;height:20px}.ar-underpage-hero{background:var(--ar-navy-950);color:var(--ar-color-text-inverse)}.ar-underpage-hero__inner{padding-top:40px;padding-bottom:64px;text-align:center;display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-8)}.ar-underpage-hero__eyebrow,.ar-underpage-hero__headline{color:var(--ar-color-text-inverse);margin:0}.ar-underpage-hero__accent{color:var(--ar-color-text-brand-primary);font-family:"Playfair Display",Georgia,serif;font-style:italic}.ar-underpage-hero__desc{color:var(--ar-color-text-inverse);max-width:60ch;margin-top:var(--ar-space-8)}.ar-content-media__grid{display:flex !important;flex-direction:column !important;gap:var(--ar-space-32)}.ar-content-media--left .ar-content-media__grid,.ar-content-media--right .ar-content-media__grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:var(--ar-space-64);align-items:center}@media(max-width: 1199px){.ar-content-media--left .ar-content-media__grid,.ar-content-media--right .ar-content-media__grid{grid-template-columns:1fr !important;gap:var(--ar-space-32)}}.ar-content-media--right .ar-content-media__image{order:2}@media(max-width: 1199px){.ar-content-media--right .ar-content-media__image{order:-1}}@media(max-width: 1199px){.ar-content-media--left .ar-content-media__image{order:-1}}.ar-content-media--none .ar-content-media__text{max-width:760px}.ar-content-media__image img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--ar-radius-lg)}@media(max-width: 1199px){.ar-content-media__image img{aspect-ratio:16/10}}.ar-content-media__text{display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}.ar-content-media__body p+p{margin-top:var(--ar-space-16)}.ar-content-media__cta{margin-top:var(--ar-space-8)}.ar-usp-row__grid{display:grid !important;grid-template-columns:repeat(3, 1fr) !important;gap:var(--ar-card-gap-desktop)}@media(max-width: 1199px){.ar-usp-row__grid{gap:var(--ar-card-gap-tablet)}}@media(max-width: 767px){.ar-usp-row__grid{grid-template-columns:1fr !important;gap:var(--ar-card-gap-mobile)}}.ar-usp-row__card{background:var(--ar-color-bg-brand);color:var(--ar-color-text-inverse);border-radius:16px 0 16px 0;padding:var(--ar-space-32);display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}.ar-usp-row__icon{color:var(--ar-color-text-brand-primary);width:44px;height:44px;display:flex !important;align-items:center;justify-content:center;background:rgba(144,214,252,.12);border-radius:var(--ar-radius-md)}.ar-usp-row__icon svg{width:24px;height:24px}.ar-usp-row__title{color:var(--ar-color-text-brand-primary);margin:0}.ar-usp-row__body{color:var(--ar-color-text-inverse);margin:0}.ar-faq-section__heading{margin-bottom:var(--ar-space-32);max-width:70ch}.ar-faq-section__heading>*+*{margin-top:var(--ar-space-8)}.ar-faq-section__desc{color:var(--ar-color-text-secondary)}.ar-faq{max-width:1200px;border-top:1px solid var(--ar-color-border-default)}/* Performance fix: Elementor's classic Accordion widget animates open/close with jQuery slideDown/slideUp, which recalculates height on every animation frame. On this page that reflow was propagating through the whole document (not just the accordion), which is what made opening a question feel laggy/janky. CSS containment scopes that reflow to the accordion itself so the rest of the page is not re-laid-out on every frame. */.ar-faq{contain:layout}.ar-faq .elementor-accordion-item{contain:layout}.ar-faq__item{border-bottom:1px solid var(--ar-color-border-default)}.ar-faq__trigger{width:100%;background:none;border:0;padding:var(--ar-space-24) 0;display:flex !important;align-items:center;justify-content:space-between;gap:var(--ar-space-16);text-align:left;color:var(--ar-color-text-primary);cursor:pointer}.ar-faq__chevron{flex:none;color:var(--ar-color-text-secondary);transition:transform .2s ease}.ar-faq__item[data-open=true] .ar-faq__chevron{transform:rotate(180deg);color:var(--ar-color-text-brand-secondary)}.ar-faq__panel{display:grid !important;grid-template-rows:0fr !important;transition:grid-template-rows .25s ease}.ar-faq__item[data-open=true] .ar-faq__panel{grid-template-rows:1fr !important;}.ar-faq__panel-inner{overflow:hidden;min-height:0;color:var(--ar-color-text-secondary)}.ar-faq__item[data-open=true] .ar-faq__panel-inner{padding-bottom:var(--ar-space-24)}.ar-faq__panel-inner p+p{margin-top:var(--ar-space-12)}.ar-feature-teaser__grid{display:grid !important;grid-template-columns:460fr 560fr !important;gap:var(--ar-space-64);align-items:center}@media(max-width: 1199px){.ar-feature-teaser__grid{grid-template-columns:1fr !important;gap:var(--ar-space-32)}}.ar-feature-teaser__image img{width:100%;aspect-ratio:13/10;object-fit:cover;border-radius:var(--ar-radius-lg)}@media(max-width: 1199px){.ar-feature-teaser__image img{aspect-ratio:16/9}}.ar-feature-teaser__text{display:flex !important;flex-direction:column !important;align-items:flex-start;gap:var(--ar-space-16)}.ar-feature-teaser__body{color:var(--ar-color-text-secondary);margin:0}.ar-cta-band{background:var(--ar-color-bg-brand);color:var(--ar-color-text-inverse)}.ar-cta-band__inner{max-width:700px;margin-inline:auto;text-align:center;display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-16)}.ar-cta-band__inner h2{color:var(--ar-color-text-inverse)}.ar-cta-band__body{color:var(--ar-color-text-inverse)}.ar-row-block__heading{margin-bottom:var(--ar-space-32);max-width:70ch}.ar-row-block__heading>*+*{margin-top:var(--ar-space-8)}.ar-row-block__rows{display:flex !important;flex-direction:column !important;gap:var(--ar-card-gap-desktop)}@media(max-width: 1199px){.ar-row-block__rows{gap:var(--ar-card-gap-tablet)}}@media(max-width: 767px){.ar-row-block__rows{gap:var(--ar-card-gap-mobile)}}.ar-row-block__row{background:var(--ar-color-bg-page);border-left:6px solid var(--ar-color-bg-brand);border-radius:0 var(--ar-radius-lg) 0 0;box-shadow:var(--ar-shadow-sm);padding:var(--ar-space-32) var(--ar-space-48) var(--ar-space-40);display:grid !important;grid-template-columns:320px 1fr !important;gap:var(--ar-space-40)}@media(max-width: 1199px){.ar-row-block__row{grid-template-columns:1fr !important;gap:var(--ar-space-16);padding:var(--ar-space-24)}}
.ar-row-block__row-title{margin:0}.ar-row-block__row-body{color:var(--ar-color-text-secondary)}.ar-row-block__row-body p+p{margin-top:var(--ar-space-12)}.ar-row-block__badge{margin-top:var(--ar-space-32);background:var(--ar-color-bg-surface);border:1px solid var(--ar-color-border-default);border-radius:var(--ar-radius-pill);padding:var(--ar-space-12) var(--ar-space-24);text-align:center;color:var(--ar-color-text-secondary)}.ar-row-block__badge a{color:var(--ar-color-text-brand-secondary)}.ar-card-grid-small__heading{margin-bottom:var(--ar-space-32);max-width:70ch}.ar-card-grid-small__heading>*+*{margin-top:var(--ar-space-8)}.ar-card-grid-small__grid{display:grid !important;grid-template-columns:repeat(4, 1fr) !important;gap:24px}@media(max-width: 1199px){.ar-card-grid-small__grid{grid-template-columns:repeat(2, 1fr) !important;gap:24px}}@media(max-width: 767px){.ar-card-grid-small__grid{grid-template-columns:1fr !important;gap:24px}}.ar-card-grid-small__card{background:var(--ar-color-bg-brand);color:var(--ar-color-text-inverse);border-radius:var(--ar-radius-md);padding:var(--ar-space-24);display:flex !important;align-items:center;min-height:88px}
/* Tjanster page, "Malgrupper" cards: this container is an Elementor
   column-direction flex box, so align-items:center only centers the
   text horizontally -- the main axis (vertical, since flex-direction is
   column) defaults to justify-content:normal, leaving text pinned to
   the top of the 88px-tall card. Center it vertically too, but only on
   tablet and mobile per request (desktop keeps its current top-aligned
   look). */
@media(max-width: 1199px){.ar-card-grid-small__card{justify-content:center !important;}}.ar-contact-cards__grid{display:grid !important;grid-template-columns:repeat(2, 1fr) !important;gap:var(--ar-card-gap-desktop)}@media(max-width: 1199px){.ar-contact-cards__grid{gap:var(--ar-card-gap-tablet)}}@media(max-width: 767px){.ar-contact-cards__grid{grid-template-columns:1fr !important;gap:var(--ar-card-gap-mobile)}}.ar-contact-cards__card{background:var(--ar-color-bg-brand);color:var(--ar-color-text-inverse);border-radius:var(--ar-radius-lg);padding:var(--ar-space-32);display:flex !important;flex-direction:column !important;gap:var(--ar-space-8);align-items:flex-start}.ar-contact-cards__title{color:var(--ar-color-text-brand-primary);margin:0}.ar-contact-cards__desc,.ar-contact-cards__value{color:var(--ar-color-text-inverse);margin:0}.ar-contact-cards__card .ar-btn{margin-top:var(--ar-space-16)}.ar-checklist__heading{margin-bottom:var(--ar-space-32);max-width:70ch}.ar-checklist__heading>*+*{margin-top:var(--ar-space-8)}.ar-checklist__desc{color:var(--ar-color-text-secondary)}.ar-checklist__list{list-style:none;margin:0;padding:0;display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}.ar-checklist__item{display:flex !important;align-items:center;gap:var(--ar-space-12);color:var(--ar-color-text-primary)}.ar-checklist__item svg{flex:none;width:18px;height:18px;color:var(--ar-color-text-brand-secondary)}.ar-statement-band{background:var(--ar-color-bg-brand)}.ar-statement-band__text{color:var(--ar-color-text-inverse);text-align:center;margin:0 auto;max-width:20ch}.ar-calculator-intro{position:relative;background:var(--ar-color-bg-brand);border:1px solid var(--ar-color-border-default);border-radius:var(--ar-radius-xl);box-shadow:var(--ar-shadow-lg);overflow:hidden;display:flex !important;align-items:stretch;min-height:540px}@media(max-width: 1199px){.ar-calculator-intro{flex-direction:column !important;min-height:0}}.ar-calculator-intro__text{flex:1 1 0;display:flex !important;flex-direction:column !important;justify-content:center;align-items:flex-start;gap:var(--ar-space-40);padding:var(--ar-space-64) var(--ar-space-24) var(--ar-space-64) var(--ar-space-64)}@media(max-width: 1199px){.ar-calculator-intro__text{padding:var(--ar-space-32) var(--ar-space-48);gap:var(--ar-space-24)}}@media(max-width: 767px){.ar-calculator-intro__text{padding:var(--ar-space-32) var(--ar-space-24)}}.ar-calculator-intro__labels{display:flex !important;flex-direction:column !important;gap:var(--ar-space-16)}.ar-calculator-intro__eyebrow{color:var(--ar-color-text-brand-primary);margin:0}.ar-calculator-intro__headline{color:var(--ar-color-text-inverse);margin:0;max-width:28ch}.ar-calculator-intro__desc{color:var(--ar-color-text-inverse-secondary);margin:0;max-width:46ch}.ar-calculator-intro__visual{flex:1 1 0;position:relative;overflow:hidden;min-height:260px}@media(max-width: 1199px){.ar-calculator-intro__visual{flex:none;height:300px;order:-1}}@media(max-width: 767px){.ar-calculator-intro__visual{height:220px}}.ar-calculator-intro__visual .ar-calculator-intro__image{position:absolute;top:0;left:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}@media(max-width: 1199px){.ar-calculator-intro__visual .ar-calculator-intro__image{top:0;left:0;width:100%;height:100%;max-width:none;object-position:center}}.ar-calculator-intro__scrim{position:absolute;inset:0;background:linear-gradient(90deg, var(--ar-color-bg-brand) 0%, rgba(24, 42, 73, 0) 20%)}@media(max-width: 1199px){.ar-calculator-intro__scrim{background:linear-gradient(180deg, rgba(24, 42, 73, 0) 55%, var(--ar-color-bg-brand) 100%)}}.ar-calc-overlay{display:none !important;position:fixed;inset:0;z-index:200;background:rgba(16,27,46,.72);padding:var(--ar-space-24);overflow-y:auto;align-items:center;justify-content:center}@media(max-width: 1199px){.ar-calc-overlay{padding:var(--ar-page-padding-tablet)}}.ar-calc-overlay.is-open{display:flex !important;}.ar-calc-modal{width:100%;max-width:640px;max-height:none;background:var(--ar-color-bg-surface);border-radius:var(--ar-radius-lg);box-shadow:var(--ar-shadow-lg);padding:var(--ar-space-32) var(--ar-space-32) var(--ar-space-40);margin:auto}@media(max-width: 1199px){.ar-calc-modal{max-width:var(--ar-container-width-tablet)}}@media(max-width: 767px){.ar-calc-modal{max-width:var(--ar-container-width-mobile);padding:var(--ar-space-24) var(--ar-space-24) var(--ar-space-32);max-height:none !important}}.ar-calc-close-row{display:flex !important;justify-content:flex-end;margin-bottom:var(--ar-space-16)}.ar-calc-close{display:inline-flex !important;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;color:var(--ar-color-text-primary);cursor:pointer}.ar-calc-close svg{width:14px;height:14px}.ar-calc-close:hover{opacity:.6}.ar-calc-step{display:none !important;flex-direction:column !important;gap:var(--ar-space-40)}.ar-calc-step.is-active{display:flex !important;}@media(max-width: 767px){.ar-calc-step{gap:var(--ar-space-24)}}.ar-calc-progress{background:var(--ar-color-border-subtle);height:6px;border-radius:var(--ar-radius-pill);overflow:hidden}.ar-calc-progress__fill{background:var(--ar-color-bg-brand);height:100%;border-radius:var(--ar-radius-pill);transition:width .3s ease;width:0%}.ar-calc-question{color:var(--ar-color-text-primary);margin:0}.ar-calc-options{display:flex !important;flex-direction:column !important;gap:var(--ar-space-12)}.ar-calc-options__row{display:flex !important;flex-wrap:wrap !important;gap:var(--ar-space-12)}.ar-calc-pill{flex:0 1 282px;min-width:140px;height:56px;display:flex !important;align-items:center;justify-content:center;text-align:center;background:var(--ar-color-bg-page);border:1px solid var(--ar-color-border-default);border-radius:var(--ar-radius-lg);padding:var(--ar-space-16) var(--ar-space-24);font-family:"DM Sans",sans-serif;font-weight:500;font-size:16px;letter-spacing:.16px;color:var(--ar-color-text-primary);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.ar-calc-pill:hover{border-color:#90D6FC;background:#EAF7FE}.ar-calc-pill[aria-checked=true]{border-color:var(--ar-color-border-brand);background:#101B2E;color:#F6F6F6;font-weight:600}.ar-calc-field{display:flex !important;flex-direction:column !important;gap:var(--ar-space-8);width:100%;max-width:220px}.ar-calc-field--wide{max-width:none}.ar-calc-field__label{font-family:"DM Sans",sans-serif;font-weight:500;font-size:14px;letter-spacing:.56px;color:var(--ar-color-text-secondary)}.ar-calc-field__input{width:100%;background:var(--ar-color-bg-page);border:1px solid var(--ar-color-border-default);border-radius:var(--ar-radius-md);padding:var(--ar-space-12) var(--ar-space-16);font-family:"DM Sans",sans-serif;font-size:16px;color:var(--ar-color-text-primary)}.ar-calc-field__input::placeholder{color:var(--ar-color-text-secondary)}.ar-calc-field__input:focus-visible{border-color:var(--ar-color-border-focus)}.ar-calc-field__input[aria-invalid=true]{border-color:var(--ar-error-500)}.ar-calc-field__error{display:none !important;font-family:"DM Sans",sans-serif;font-size:13px;color:var(--ar-error-500)}.ar-calc-field--invalid .ar-calc-field__error{display:block !important;}.ar-calc-fields{display:flex !important;flex-direction:column !important;gap:var(--ar-space-24);width:100%}.ar-calc-nav-row{display:flex !important;align-items:center;justify-content:space-between;gap:var(--ar-space-16)}.ar-calc-nav-row--end{justify-content:flex-end}@media(max-width: 767px){.ar-calc-nav-row{flex-direction:column-reverse !important;align-items:stretch !important}.ar-calc-nav-row .ar-btn{width:100% !important}}.ar-calc-result{display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-16);text-align:center}.ar-calc-result__title{display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-4)}.ar-calc-result__eyebrow{font-family:"DM Sans",sans-serif;font-weight:500;font-size:14px;letter-spacing:.56px;color:var(--ar-color-text-secondary)}.ar-calc-result__headline{color:var(--ar-color-text-brand-secondary);margin:0}.ar-calc-result__desc{color:var(--ar-color-text-secondary);margin:0;max-width:46ch}.ar-calc-summary{width:100%;background:var(--ar-color-bg-accent-subtle);border-radius:var(--ar-radius-md);padding:var(--ar-space-24);display:flex !important;flex-direction:column !important;gap:var(--ar-space-12);text-align:left}.ar-calc-summary__row{display:flex !important;align-items:flex-start;justify-content:space-between;gap:var(--ar-space-16);font-family:"DM Sans",sans-serif;font-size:14px}.ar-calc-summary__label{color:var(--ar-color-text-secondary)}.ar-calc-summary__value{color:var(--ar-color-text-primary);text-align:right}.ar-calc-cta{width:100%;display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-16)}.ar-calc-cta .ar-btn{width:100%;justify-content:center}.ar-calc-cta .ar-btn--outlined{width:auto}.ar-calc-cta[data-loading=true] .ar-btn--primary{opacity:.7;pointer-events:none}.ar-error-page{background:var(--ar-navy-950);color:var(--ar-color-text-inverse);display:flex !important;align-items:center;min-height:calc(100vh - 64px - 233px);min-height:calc(100dvh - 64px - 233px)}@media(max-width: 1199px){.ar-error-page{min-height:0}}@media(max-width: 767px){.ar-error-page{min-height:0}}.ar-error-page__inner{padding-block:var(--ar-space-96);text-align:center;display:flex !important;flex-direction:column !important;align-items:center;gap:var(--ar-space-16)}@media(max-width: 1199px){.ar-error-page__inner{padding-block:var(--ar-space-64)}}@media(max-width: 767px){.ar-error-page__inner{padding-block:var(--ar-space-48)}}.ar-error-page__icon{color:var(--ar-color-text-brand-primary);width:56px;height:56px;margin-bottom:var(--ar-space-8)}.ar-error-page__icon svg{width:100%;height:100%}.ar-error-page__code{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-style:italic;font-size:160px;line-height:1;color:var(--ar-color-text-brand-primary);margin:0}@media(max-width: 1199px){.ar-error-page__code{font-size:120px}}@media(max-width: 767px){.ar-error-page__code{font-size:84px}}.ar-error-page__heading{color:var(--ar-color-text-inverse);margin:0}.ar-error-page__desc{color:var(--ar-color-text-inverse-secondary);max-width:52ch;margin:0}.ar-error-page__buttons{display:flex !important;gap:var(--ar-space-16);flex-wrap:wrap !important;justify-content:center;margin-top:var(--ar-space-8)}
/* ===== Elementor-container-defaults override patch =====
   Elementor writes flex-direction:column (and other layout defaults) as
   .elementor-element.elementor-eXXXXXX{...} per instance -- specificity
   (0,2,0), higher than a single ar-* class selector, so it silently wins
   the cascade regardless of source order. This patch pins the ORIGINAL
   design's flex/grid layout with !important on every structural class
   that needs a non-default direction/columns, so native Elementor
   Containers styled purely with these classes render identically to the
   source HTML. */

.ar-nav__bar{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;}
.ar-nav__list{display:flex !important;flex-direction:row !important;align-items:center !important;}
.ar-nav__toggle{flex-direction:column !important;align-items:center !important;justify-content:center !important;}
.ar-nav__mobile-list{flex-direction:column !important;}
body:not(.page-id-48) .ar-nav{position:relative !important;background:var(--ar-navy-950) !important;}
body.page-id-48 .ar-nav{position:absolute !important;top:0 !important;left:0 !important;right:0 !important;background:transparent !important;}

.ar-footer__grid{display:grid !important;grid-template-columns:minmax(0,420px) 1fr !important;align-items:start !important;}
.ar-footer__brand{display:flex !important;flex-direction:column !important;}
.ar-footer__logo{display:inline-flex !important;flex-direction:row !important;align-items:center !important;}
.ar-footer__cards{display:flex !important;flex-direction:row !important;justify-content:flex-end !important;}
.ar-footer__contact-lines{display:flex !important;flex-direction:column !important;}
.ar-footer__social{display:inline-flex !important;align-items:center !important;justify-content:center !important;}
.ar-footer__nav-list{display:flex !important;flex-direction:column !important;}
.ar-footer__bottom{display:flex !important;flex-direction:row !important;justify-content:space-between !important;}
@media (max-width:1199px){
  .ar-footer__grid{grid-template-columns:1fr !important;}
  .ar-footer__cards{justify-content:flex-start !important;}
}
@media (max-width:767px){
  .ar-footer__cards{flex-direction:column !important;}
  .ar-footer__bottom{flex-direction:column !important;}
}

.ar-hero{display:flex !important;}
.ar-hero__inner{display:flex !important;flex-direction:column !important;justify-content:flex-end !important;}
.ar-hero__text{display:flex !important;flex-direction:column !important;}
.ar-hero__buttons{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;}
.ar-hero__badges{display:flex !important;flex-wrap:wrap !important;}
@media(min-width: 768px) and (max-width: 1199px){.ar-hero__badges{flex-wrap:nowrap !important;}}
.ar-hero__badge{display:flex !important;flex-direction:row !important;align-items:center !important;}
@media (max-width:767px){
  .ar-hero__badges{flex-direction:column !important;align-items:flex-start !important;}
}

.ar-underpage-hero__inner{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;}

.ar-content-media__grid{display:flex !important;flex-direction:column !important;}
.ar-content-media--left .ar-content-media__grid,
.ar-content-media--right .ar-content-media__grid{display:grid !important;grid-template-columns:1fr 1fr !important;align-items:center !important;}
.ar-content-media__text{display:flex !important;flex-direction:column !important;}
@media (max-width:1199px){
  .ar-content-media--left .ar-content-media__grid,
  .ar-content-media--right .ar-content-media__grid{grid-template-columns:1fr !important;}
}

.ar-usp-row__grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;}
.ar-usp-row__card{display:flex !important;flex-direction:column !important;}
.ar-usp-row__icon{display:flex !important;align-items:center !important;justify-content:center !important;}
@media (max-width:767px){
  .ar-usp-row__grid{grid-template-columns:1fr !important;}
}

.ar-faq-section__heading{display:flex !important;flex-direction:column !important;}
.ar-faq__trigger{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;}

.ar-feature-teaser__grid{display:grid !important;grid-template-columns:460fr 560fr !important;align-items:center !important;}
.ar-feature-teaser__text{display:flex !important;flex-direction:column !important;align-items:flex-start !important;}
@media (max-width:1199px){
  .ar-feature-teaser__grid{grid-template-columns:1fr !important;}
}

.ar-cta-band__inner{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;}

.ar-row-block__rows{display:flex !important;flex-direction:column !important;}
.ar-row-block__row{display:grid !important;grid-template-columns:320px 1fr !important;}
@media (max-width:1199px){
  .ar-row-block__row{grid-template-columns:1fr !important;}
}

.ar-card-grid-small__grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;}
.ar-card-grid-small__card{display:flex !important;align-items:center !important;}
@media (max-width:1199px){
  .ar-card-grid-small__grid{grid-template-columns:repeat(2,1fr) !important;}
}
@media (max-width:767px){
  .ar-card-grid-small__grid{grid-template-columns:1fr !important;}
}

.ar-contact-cards__grid{display:grid !important;grid-template-columns:repeat(2,1fr) !important;}
.ar-contact-cards__card{display:flex !important;flex-direction:column !important;align-items:flex-start !important;}
@media (max-width:767px){
  .ar-contact-cards__grid{grid-template-columns:1fr !important;}
}

.ar-checklist__list{display:flex !important;flex-direction:column !important;}
.ar-checklist__item{display:flex !important;flex-direction:row !important;align-items:center !important;}

.ar-faq .elementor-accordion{border-top:1px solid var(--ar-color-border-default);}
.ar-faq .elementor-accordion-item{border-bottom:1px solid var(--ar-color-border-default);border-top:none;}
.ar-faq .elementor-tab-title{padding:var(--ar-space-24) 0 !important;font-family:'DM Sans',sans-serif;font-weight:600;font-size:20px;line-height:28px;color:var(--ar-color-text-primary);display:flex !important;align-items:center !important;justify-content:space-between !important;}
.ar-faq .elementor-tab-title .elementor-accordion-icon{color:var(--ar-color-text-secondary);}
.ar-faq .elementor-tab-title.elementor-active .elementor-accordion-icon{color:var(--ar-color-text-brand-secondary);}
.ar-faq .elementor-tab-content{padding:0 0 var(--ar-space-24) !important;border-top:none !important;color:var(--ar-color-text-secondary);font-family:'DM Sans',sans-serif;font-size:16px;line-height:24px;}
.ar-faq .elementor-tab-content p + p{margin-top:var(--ar-space-12);}

.ar-usp-row__icon .elementor-icon,
.ar-hero__badge .elementor-icon{padding:0;background:transparent;}
/* ===== Utility classes + 404 error-page overrides (added for remaining pages) ===== */
.ar-text-accent-color{color:var(--ar-color-text-brand-primary) !important;}
.ar-text-secondary{color:var(--ar-color-text-secondary) !important;}
.ar-text-muted-inverse{color:var(--ar-color-text-inverse-secondary) !important;}
.ar-note-right{display:flex !important;justify-content:flex-end !important;margin-top:var(--ar-space-32) !important;}

.ar-error-page{display:flex !important;align-items:center !important;min-height:calc(100vh - 64px - 233px) !important;min-height:calc(100dvh - 64px - 233px) !important;}
.ar-error-page__inner{display:flex !important;flex-direction:column !important;align-items:center !important;text-align:center !important;}
.ar-error-page__buttons{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:center !important;}
@media (max-width:1199px){ .ar-error-page{min-height:0 !important;} }
@media (max-width:767px){ .ar-error-page{min-height:0 !important;} }

/* ===== Elementor Button-widget re-skin =====
   Elementor's "button" widget always renders the actual clickable element
   as <a class="elementor-button"> nested INSIDE the widget wrapper div
   (which is where we attach our ar-btn / ar-btn--variant classes via
   _css_classes). Elementor ships its own per-instance CSS for
   .elementor-button (background, padding, etc., incl. the legacy default
   accent green #61CE70) at specificity (0,2,0), which wins over a single
   ar-btn class selector applied to the wrapper. Fix: neutralise the
   wrapper's own box so it's an invisible shell, and re-apply the intended
   ar-btn look directly to the inner .elementor-button element. Values
   mirror scss/components/_buttons.scss 1:1. */
.ar-btn.elementor-widget-button{background:transparent !important;border:none !important;padding:0 !important;border-radius:0 !important;min-height:0 !important;}
.ar-btn .elementor-button{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:var(--ar-space-8) !important;padding:10px var(--ar-space-24) !important;border-radius:var(--ar-radius-md) !important;border:1px solid transparent !important;font-family:'DM Sans',sans-serif !important;font-weight:500 !important;font-size:16px !important;line-height:24px !important;letter-spacing:0.16px !important;text-decoration:none !important;cursor:pointer !important;transition:background-color .15s ease,border-color .15s ease,color .15s ease !important;min-height:44px !important;width:auto !important;box-shadow:none !important;}
.ar-btn .elementor-button svg{width:18px !important;height:18px !important;flex:none !important;}
@media (max-width:767px){
  .ar-btn .elementor-button{font-size:15px !important;line-height:22px !important;}
}
.ar-btn--primary .elementor-button{background:var(--ar-btn-primary-bg) !important;color:var(--ar-btn-primary-text) !important;}
.ar-btn--primary .elementor-button:hover{background:var(--ar-btn-primary-bg-hover) !important;}
.ar-btn--secondary .elementor-button{background:var(--ar-btn-secondary-bg) !important;color:var(--ar-btn-secondary-text) !important;}
.ar-btn--secondary .elementor-button:hover{background:var(--ar-btn-secondary-bg-hover) !important;}
.ar-btn--outlined .elementor-button{background:transparent !important;color:var(--ar-btn-outlined-text) !important;border-color:var(--ar-btn-outlined-border) !important;}
.ar-btn--outlined .elementor-button:hover{background:var(--ar-btn-outlined-bg-hover) !important;}
.ar-btn--outlined-inverse .elementor-button{background:transparent !important;color:var(--ar-btn-outlined-inverse-text) !important;border-color:var(--ar-btn-outlined-inverse-border) !important;}
.ar-btn--outlined-inverse .elementor-button:hover{background:var(--ar-btn-outlined-inverse-bg-hover) !important;}
.ar-btn .elementor-button:disabled,
.ar-btn.elementor-widget-button[aria-disabled="true"] .elementor-button{opacity:0.5 !important;cursor:not-allowed !important;pointer-events:none !important;}


/* ===== FAQ accordion icon fix =====
   Elementor's icon SVGs (e-font-icon-svg) set their own explicit fill
   (from the site's default accent color, incl. the same legacy green as
   the button fix above) rather than inheriting currentColor, and win over
   a plain `color` declaration on the wrapper at equal/lower specificity.
   Force both color and fill, with !important, to the intended ar-faq
   icon colors for closed vs. active accordion items. */
.ar-faq .elementor-tab-title .elementor-accordion-icon{color:var(--ar-color-text-secondary) !important;}
.ar-faq .elementor-tab-title .elementor-accordion-icon svg{fill:var(--ar-color-text-secondary) !important;}
.ar-faq .elementor-tab-title.elementor-active .elementor-accordion-icon{color:var(--ar-color-text-brand-secondary) !important;}
.ar-faq .elementor-tab-title.elementor-active .elementor-accordion-icon svg{fill:var(--ar-color-text-brand-secondary) !important;}


/* ===== FAQ accordion title text fix =====
   The visible title text lives in Elementor's own <a class="elementor-
   accordion-title"> inside .elementor-tab-title, which carries Elementor's
   own default link color (the same legacy accent green) and font-family
   (Roboto), beating our .elementor-tab-title rule since that targeted the
   wrapping div, not this inner anchor. Per _sections.scss .ar-faq__trigger,
   the title text color does NOT change between open/closed — only the
   icon does. */
.ar-faq .elementor-tab-title .elementor-accordion-title{color:var(--ar-color-text-primary) !important;font-family:'DM Sans',sans-serif !important;text-decoration:none !important;}




/* ===== Home hero: content column should fill full hero height =====
   .ar-hero is a column-direction flex container (Elementor Container
   default) whose only child is .ar-hero__inner. In a column flex
   container the main axis is vertical, so a child's height is sized to
   its own content by default (only the cross axis — width — stretches
   automatically) — that's why .ar-hero__inner sat at ~630px tall inside
   a full 100vh/958px hero instead of filling it. flex-grow along the main
   axis is the correct fix (a plain height:100% doesn't reliably resolve
   here since the parent's rendered height comes from min-height, not an
   explicit height, so it isn't a "definite" height for percentage
   resolution). This makes the whole ar-hero__inner box — and therefore
   the flex-end-anchored text/badges inside it — span the full hero. */
.ar-hero{flex-direction:column !important;}
.ar-hero__inner{flex:1 1 auto !important;}


/* ===== H1 (.ar-text-display-h1) line-height update =====
   Requested: Playfair Display, italic, 700, 58px font-size / 110px
   line-height (fixed px, not the previous 1.1 ratio ~63.8px). Font
   family/style/weight/size were already correct — only line-height
   changes, on the desktop base rule (tablet/mobile keep their existing
   ratio-based line-heights since no new spec was given for those). */
.ar-hero__headline{line-height:110% !important;}


/* ===== Heading-widget typography fix (sitewide) =====
   Same root cause as the Button/Accordion re-skin fixes above: Elementor's
   "heading" widget always renders the actual <h1>-<h6> tag as
   <h_ class="elementor-heading-title ..."> INSIDE the widget wrapper div
   (where our _css_classes — ar-text-display-h1, ar-text-heading-h3, etc.
   — are attached). Elementor's own kit/global typography sets its own
   explicit font-family/weight/style/size/line-height/color on
   .elementor-heading-title, which breaks CSS inheritance from the wrapper
   and wins outright since it's a specified (not inherited) value. This
   affected literally every heading widget sitewide (21 instances across
   all 8 posts) — headings were rendering in Elementor's default Roboto
   instead of Playfair Display / DM Sans, at the wrong weight/size/line-
   height, though colors often looked coincidentally plausible.
   Fix: force the inner title element to inherit every one of these
   properties from the wrapper, where our typography + color classes
   (already confirmed correctly applied to the wrapper itself) live. This
   is more robust than re-declaring each typography class a second time
   scoped to .elementor-heading-title, and covers every class combination
   (ar-text-display-h1, ar-text-display-large, ar-text-heading-h2/h3/h4,
   plus color/accent modifier classes like ar-hero__headline,
   ar-underpage-hero__accent, ar-error-page__heading, ar-text-accent-color)
   without enumerating each pairing. */
.elementor-widget-heading .elementor-heading-title{
  font-family:inherit !important;
  font-weight:inherit !important;
  font-style:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
  letter-spacing:inherit !important;
  color:inherit !important;
}


/* ===== Home hero: 0px gap between eyebrow and H1 =====
   .ar-hero__text uses flexbox `gap:16px` (var(--ar-space-16)) uniformly
   between ALL its children (eyebrow, headline, desc, buttons). To close
   just the eyebrow->headline gap without affecting the other gaps, cancel
   it out with an equal negative top margin on the headline specifically
   (gap and margin stack independently in flexbox, so this nets to 0px
   between eyebrow and H1 while headline->desc->buttons keep their normal
   16px gap). */



/* ===== Home hero badges: side by side, not stacked =====
   Same root cause as the earlier .ar-hero fix: .ar-hero__badges is an
   Elementor Container, which defaults to flex-direction:column when no
   direction is forced. The original CSS never set an explicit direction
   (relying on the plain-CSS default of row), so on the live site the two
   badge lines were stacking vertically instead of sitting side by side. */
.ar-hero__badges{flex-direction:row !important;}


/* ===== Home hero badges: fix desktop shrink-to-fit width =====
   Even with flex-direction:row restored, the two badges were still
   wrapping onto separate lines on desktop. .ar-hero__badges has
   align-self:flex-end (not stretch), so its width is shrink-to-fit
   rather than filling the parent — but combined with flex-wrap:wrap and
   Elementor's container wrapper markup, the browser's shrink-to-fit pass
   was sizing the box to fit only the WIDEST single badge rather than
   both badges on one line, forcing an unwanted wrap even though there was
   plenty of horizontal room. Forcing width:max-content on desktop makes
   it size to fit both badges side by side, matching the original design.
   Scoped to desktop only (matches the existing 1199px tablet breakpoint
   used elsewhere) since tablet intentionally goes align-self:stretch
   (full-width panel) and mobile intentionally stacks via flex-direction:
   column — neither of those should get a shrink-to-fit width. */
@media (min-width:1200px){
  .ar-hero__badges{width:max-content !important; flex-wrap:nowrap !important;}
}


/* ===== Home hero text block: custom per-pair gaps =====
   Requested: 8px between eyebrow and H1, 24px between H1 and desc, 24px
   between desc and the button row. .ar-hero__text uses a single uniform
   flex `gap` for all children, which can't express different spacing per
   pair — so gap is zeroed out here and each gap is expressed instead as
   an explicit margin-top on the following child. */
.ar-hero__text{gap:0 !important;}
.ar-hero__headline{margin-top:8px !important;}
.ar-hero__desc{margin-top:24px !important;}
.ar-hero__buttons{margin-top:24px !important;}


/* ===== Home hero: exact 100vh, incl. while logged in with the admin bar =====
   .ar-hero is min-height:100vh, which measures exactly 958px = 100vh on
   this viewport — correct for a real, logged-out visitor. But WordPress
   pushes the whole page down by the 32px admin bar (html{margin-top:32px}
   when body has .admin-bar), so while previewing as an admin the hero's
   100vh box extends 32px past the bottom of the visible viewport, making
   it feel taller than 100vh even though the CSS value is unchanged. This
   only compensates for that admin-bar offset — body.admin-bar never
   exists for a real site visitor, so the public page is unaffected. */
body.admin-bar .ar-hero{min-height:calc(100vh - 32px) !important;}
@media (max-width:782px){
  body.admin-bar .ar-hero{min-height:calc(100vh - 46px) !important;}
}


/* ===== Home page, first section after hero: custom per-pair gaps =====
   Requested: 12px between eyebrow/title/ingress, 24px for the rest of the
   gaps in that container (ingress->body text->body text->button).
   Scoped to this specific container instance (elementor-element-35ff982)
   rather than the shared .ar-container class, since that class is reused
   across many other sections sitewide. */
.elementor-element-35ff982{gap:0 !important;}
.elementor-element-35ff982 > .elementor-element-0cfac2e{margin-top:12px !important;}
.elementor-element-35ff982 > .elementor-element-53cf9dc{margin-top:12px !important;}
.elementor-element-35ff982 > .elementor-element-ef7d819{margin-top:24px !important;}
.elementor-element-35ff982 > .elementor-element-1460f38{margin-top:24px !important;}
.elementor-element-35ff982 > .elementor-element-ef49d5f{margin-top:24px !important;}


/* ===== Button icon-to-text gap: 12px =====
   The visible gap between a button's arrow icon and its text is not
   controlled by .elementor-button's own `gap` (that flex container only
   has one child, .elementor-button-content-wrapper) — it's the content
   wrapper's OWN gap, which Elementor defaults to 5px. Override that
   specifically, sitewide for every .ar-btn. */
.ar-btn .elementor-button-content-wrapper{gap:10px !important;}


/* ===== USP-row card icons: fix vertical centering =====
   The SVG inside .ar-usp-row__icon (.elementor-icon, inline-block with a
   large inherited line-height) was rendering with the default inline
   `vertical-align:baseline`, which reserves a small gap below the SVG for
   the font's descender — the classic "inline image sits a few pixels too
   high in its box" issue. That's the bottom margin/gap the icon wasn't
   centering against. Setting the SVG to display:block removes it from
   the inline text-baseline flow entirely, so it fills its box evenly and
   centers correctly. Shared class, so this fixes both the Hem and Om
   usp-row cards at once. */
.ar-usp-row__icon .elementor-icon{display:block !important;line-height:0 !important;}
.ar-usp-row__icon .elementor-icon svg{display:block !important;}

.ar-usp-row__icon .elementor-icon svg{fill:none !important;}
.ar-usp-row__icon .elementor-icon svg path[fill]{fill:#90D6FC !important;}

.ar-hero__buttons .elementor-button-icon{display:none !important;}

.ar-faq-section__heading{gap:12px !important;}
.ar-faq-section__heading > * + *{margin-top:0 !important;}

.ar-faq .elementor-tab-title .elementor-accordion-icon{order:2 !important;}
.ar-faq .elementor-tab-title .elementor-accordion-title{order:1 !important;}

.ar-faq, .ar-faq .elementor-accordion{border:none !important; border-radius:0 !important;}
.ar-faq .elementor-accordion-item{border:none !important; border-bottom:1px solid var(--ar-color-border-default) !important; border-radius:0 !important;}

.ar-container:has(> .ar-faq-section__heading + .ar-faq){gap:16px !important;}
.ar-faq-section__heading:has(+ .ar-faq){margin-bottom:0 !important;}

.ar-feature-teaser__text{gap:0 !important;}
.ar-feature-teaser__text > *:not(:first-child){margin-top:12px !important;}
.ar-feature-teaser__text > .ar-btn{margin-top:32px !important;}

.ar-cta-band__inner{gap:0 !important;}
.ar-cta-band__inner > *:not(:first-child){margin-top:16px !important;}
.ar-cta-band__inner > .ar-btn{margin-top:32px !important;}

.ar-hero__badge{gap:2px !important;}

.elementor-element-504a861{gap:0 !important;}
.elementor-element-504a861 > *:not(:first-child){margin-top:24px !important;}
.elementor-element-504a861 > .ar-eyebrow--dark + *{margin-top:12px !important;}

body{background:#F6F6F6 !important;}

.elementor-element-5b3c588{gap:0 !important;}
.elementor-element-5b3c588 > *:not(:first-child){margin-top:24px !important;}
.elementor-element-5b3c588 > .ar-eyebrow--dark + *{margin-top:12px !important;}

.elementor-element-06037dd{gap:0 !important;}
.elementor-element-f496af4{margin-top:12px !important;}

.ar-checklist__item .elementor-icon{width:20px !important;height:20px !important;display:flex !important;align-items:center !important;justify-content:center !important;}
.ar-checklist__item .elementor-icon svg{width:20px !important;height:20px !important;}

.elementor-element-c2f49e4{gap:0 !important;}
.elementor-element-cb19a7e{margin-bottom:24px !important;}

.elementor-element-cb19a7e{gap:12px !important;}

.ar-nav__bar{max-width:100% !important;}

.ar-nav__bar > .ar-nav__logo,.ar-nav__bar > .ar-nav__menu{width:auto !important;flex:0 0 auto !important;}

.ar-footer__cards > *{width:auto !important;flex:0 0 auto !important;}

.ar-faq .elementor-accordion-icon svg{width:12px !important;height:12px !important;}

.ar-footer__cards{width:100% !important;}

.ar-footer{padding-top:32px !important;}

.ar-footer__bottom{margin-top:32px !important;}

.ar-footer__social{background:transparent !important;}

.elementor-element-2ad1201{gap:0 !important;}
.elementor-element-2ad1201 > *:not(:first-child){margin-top:20px !important;}
.elementor-element-2ad1201 > .ar-footer__social{margin-top:0 !important;}

.ar-footer__contact-lines{margin-bottom:12px !important;}

.ar-footer__social .elementor-icon{font-size:50px !important;text-align:left !important;}
.ar-footer__social .elementor-icon-wrapper{text-align:left !important;}

.ar-footer__social{text-align:left !important;}

.ar-footer__social{justify-content:flex-start !important;}

.ar-nav__bar{padding-block:2px !important;}

body.page-id-48 .ar-nav,body:not(.page-id-48) .ar-nav{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;transition:transform .3s ease !important;}
.ar-nav--hidden{transform:translateY(-100%) !important;}
body:not(.page-id-48) .site-content{padding-top:68px !important;}

body.admin-bar .ar-nav{top:32px !important;}

body.page-id-48 .ar-nav{transition:transform .3s ease,background-color .3s ease !important;}
body.page-id-48 .ar-nav.ar-nav--scrolled{background:var(--ar-navy-950) !important;}

.ar-nav{padding-top:2px !important;padding-bottom:2px !important;}


/* Fix: a real <button class="ar-btn ..."> (e.g. the price-calculator's
   "Starta prisberäkningen", which isn't an Elementor button widget) gets
   the Astra theme's generic `button:hover`/`:focus`/`:active` rules applied
   (specificity tag+pseudo beats our single-class :hover rules), which sets
   an unwanted colored border-color on hover — unlike every other .ar-btn
   instance on the site, which renders as an <a> and never matches Astra's
   `button` selector. Reset it back to the transparent border our own
   design uses. */
button.ar-btn:hover,button.ar-btn:focus,button.ar-btn:active{border-color:transparent !important;outline:none !important;}
button.ar-btn--primary:focus,button.ar-btn--primary:active{background:var(--ar-btn-primary-bg) !important;}
button.ar-btn--secondary:focus,button.ar-btn--secondary:active{background:var(--ar-btn-secondary-bg) !important;}
button.ar-btn--outlined:focus,button.ar-btn--outlined:active{background:transparent !important;}
button.ar-btn--outlined-inverse:focus,button.ar-btn--outlined-inverse:active{background:transparent !important;}
button.ar-btn--primary:hover,button.ar-btn--primary:focus,button.ar-btn--primary:active{color:var(--ar-btn-primary-text) !important;}
button.ar-btn--secondary:hover,button.ar-btn--secondary:focus,button.ar-btn--secondary:active{color:var(--ar-btn-secondary-text) !important;}
button.ar-btn--outlined:hover,button.ar-btn--outlined:focus,button.ar-btn--outlined:active{color:var(--ar-btn-outlined-text) !important;}
button.ar-btn--outlined-inverse:hover,button.ar-btn--outlined-inverse:focus,button.ar-btn--outlined-inverse:active{color:var(--ar-btn-outlined-inverse-text) !important;}

/* Remove Elementor's built-in default container padding (10px left/right,
   used by any container that hasn't been given explicit padding) on
   tablet and mobile, site-wide. Elementor resolves each container's
   --padding-left/--padding-right from var(--container-default-padding-left,10px)
   / var(--container-default-padding-right,10px) when not explicitly set per
   element, so defining these two custom properties here removes the 10px
   fallback everywhere at once instead of overriding padding on every
   individual container. Top/bottom spacing is untouched. */
@media(max-width: 1199px){
	:root{--container-default-padding-left:0px;--container-default-padding-right:0px;}
}

/* Home hero: use dedicated background image crops on tablet and mobile
   instead of the desktop photo. Note: the filenames below don't match
   their current Media Library titles ("hero-img-sm" is titled
   "hero-img-tablet" and vice versa) -- the two were renamed in the
   library after upload, but the underlying file URLs didn't change.
   These URLs were verified against the DB to match the titled images
   actually requested (tablet -> title "hero-img-tablet" -> hero-img-sm.png
   file; mobile -> title "hero-img-mobile" -> hero-img-tablet.png file).
   !important is required because the base image comes from Elementor's
   own generated per-post CSS (post-48.css), which has no media query and
   no !important of its own but loads without a competing !important to
   beat. */
@media (min-width: 768px) and (max-width: 1199px){
	.ar-hero{background-image:url("https://auktoriseradrevisor.com/wp-content/uploads/2026/08/hero-img-sm.png") !important;}
}
@media (max-width: 767px){
	.ar-hero{background-image:url("https://auktoriseradrevisor.com/wp-content/uploads/2026/08/hero-img-tablet.png") !important;}
}
.js .ar-hero,.js .ar-underpage-hero,.js .ar-section,.js .ar-cta-band,.js .ar-statement-band{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}.js .ar-hero.is-visible,.js .ar-underpage-hero.is-visible,.js .ar-section.is-visible,.js .ar-cta-band.is-visible,.js .ar-statement-band.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion: reduce){.js .ar-hero,.js .ar-underpage-hero,.js .ar-section,.js .ar-cta-band,.js .ar-statement-band{opacity:1;transform:none;transition:none}}.ar-error-page__icon .elementor-icon svg{fill:none !important}.ar-error-page__icon .elementor-icon svg path[fill]{fill:currentColor !important}
.ar-cookie-consent{position:fixed;left:var(--ar-space-24);bottom:var(--ar-space-24);z-index:300;width:380px;max-width:calc(100% - var(--ar-space-48));background:var(--ar-color-bg-brand);color:var(--ar-color-text-inverse);border-radius:var(--ar-radius-lg);box-shadow:var(--ar-shadow-lg);padding:var(--ar-space-24);display:flex;flex-direction:column;gap:var(--ar-space-16);transform:translateY(calc(100% + var(--ar-space-24)));opacity:0;transition:transform .4s cubic-bezier(.22,.61,.36,1),opacity .4s ease;pointer-events:none}
.ar-cookie-consent.is-visible{transform:none;opacity:1;pointer-events:auto}
.ar-cookie-consent__text{color:var(--ar-color-text-inverse-secondary);margin:0}
.ar-cookie-consent__text a{color:var(--ar-color-text-inverse);text-decoration:underline}
.ar-cookie-consent__buttons{display:flex !important;gap:var(--ar-space-12);flex-wrap:wrap !important}
.ar-cookie-consent__buttons .ar-btn{flex:1 1 auto;min-width:0}
@media(max-width: 767px){.ar-cookie-consent{left:var(--ar-space-16);right:var(--ar-space-16);bottom:var(--ar-space-16);width:auto;max-width:none}}
@media(prefers-reduced-motion: reduce){.ar-cookie-consent{transition:opacity .2s ease;transform:none}.ar-cookie-consent:not(.is-visible){opacity:0}}

.ar-cookie-settings-link{position:fixed;left:var(--ar-space-16);bottom:var(--ar-space-16);z-index:290;background:var(--ar-color-bg-page);color:var(--ar-color-text-secondary);border:1px solid var(--ar-color-border-default);border-radius:var(--ar-radius-pill);padding:var(--ar-space-8) var(--ar-space-16);font-family:"DM Sans",sans-serif;font-size:13px;line-height:1;text-decoration:none;box-shadow:var(--ar-shadow-sm);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease,color .15s ease,border-color .15s ease}
.ar-cookie-settings-link.is-visible{opacity:1;pointer-events:auto;transform:none}
.ar-cookie-settings-link:hover{color:var(--ar-color-text-primary);border-color:var(--ar-color-border-brand)}
@media(max-width: 767px){.ar-cookie-settings-link{left:var(--ar-space-16)}}