@font-face{font-family:HighFive;src:url('/assets/archivo-black.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root{--ink:#103f36;--text:#294b42;--cream:#f9faf0;--white:#fffef7;--mint:#a5e0c5;--mint-light:#dff3e5;--jade:#47896d;--orange:#a5e0c5;--peach:#dff3e5;--line:#c6dace;--gold:#e9f2b5}
body{background:var(--cream);color:var(--ink)}h1,h2,h3,h4,.display{font-family:HighFive,Arial,sans-serif;font-weight:700;letter-spacing:0;line-height:1.18}h2{font-size:36px}h3{font-size:23px}p{line-height:1.8}.wrap{max-width:1280px;padding:0 40px}.preview{background:var(--ink);color:#e5f7eb;min-height:33px;padding:7px 20px;text-align:center;font-size:10px;letter-spacing:.035em}.preview a{color:var(--mint);font-weight:600}.site-header{position:relative;z-index:10;background:#c5ebd7;border:0;box-shadow:none}.header-inner{height:103px;gap:35px}.logo.hf-logo{display:inline-flex;flex-shrink:0;transform:none}.logo.hf-logo img{width:245px;height:auto;display:block}.site-header .hf-logo{position:relative;margin-top:-20px;z-index:12}.nav{font-family:HighFive,Arial,sans-serif;gap:24px;font-size:13px}.nav a:hover{color:#236d54}.nav .button{font-size:13px}.button{font-family:HighFive,Arial,sans-serif;font-size:13px;letter-spacing:0;padding:15px 20px;border:2px solid var(--ink);border-radius:7px;background:var(--ink);color:var(--cream);box-shadow:none;text-transform:uppercase;text-decoration:none;line-height:1.3}.button:hover{background:#1d5b4c;border-color:#1d5b4c;color:#fff}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #33795f;outline-offset:5px}.mint-button,.button.orange{background:var(--mint);border-color:var(--mint);color:var(--ink)}.mint-button:hover,.button.orange:hover{background:#c3ecd7;border-color:#c3ecd7;color:var(--ink)}.pale-button,.button.ghost{background:transparent;border-color:var(--ink);color:var(--ink)}.pale-button:hover,.button.ghost:hover{background:#d1eddd;color:var(--ink)}.hero-secondary{background:transparent;border-color:var(--mint);color:var(--mint)}.hero-secondary:hover{background:#ffffff14;color:#fff;border-color:#fff}.eyebrow{font-family:DM,Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--jade)}.text-link{color:var(--ink);font-weight:700}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px}.center-copy{max-width:900px;margin:0 auto;text-align:center}.center-copy p{max-width:760px;margin:20px auto 0}.center-copy .actions{justify-content:center}h2>span{display:block;font-size:.65em;line-height:1.35;color:var(--jade);margin-top:7px}
.hf-hero{position:relative;isolation:isolate;background:linear-gradient(90deg,rgba(7,32,27,.72),rgba(7,32,27,.51)),url('/assets/swedish-villa-hero.webp') center 52%/cover;color:var(--cream);padding:90px 0 100px;overflow:hidden}.hero-arc{position:absolute;left:-7%;top:-65px;width:114%;height:105px;background:#c5ebd7;border-radius:0 0 50% 50%;box-shadow:0 10px 0 #9bd5ba,0 20px 0 #78b99b;z-index:0}.hf-hero-grid{display:grid;grid-template-columns:1fr 255px;align-items:center;gap:30px;position:relative}.hf-hero-copy{text-align:center;max-width:820px}.hf-hero h1{font-size:48px;line-height:1.12;color:#c0eed7;margin:0}.hf-hero h1 span{display:block;font-size:29px;line-height:1.2;color:#e5f2b8;margin-top:12px}.hf-hero-copy>p{font-size:13px;font-weight:700;line-height:1.8;margin:24px 0;color:#f7fff6}.hf-hero .actions{justify-content:center}.hf-hero-mascot{display:block;width:255px;height:355px;object-fit:contain;transform:rotate(3deg);filter:drop-shadow(0 7px 10px #03251d40)}.reference-credit{position:absolute;bottom:18px;right:25px;font-size:9px;color:#d2e0d5}.hf-welcome{background:var(--cream);padding-bottom:60px}.welcome-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.welcome-card{position:relative;margin-top:-62px;border-radius:15px;background:#fffef9;padding:40px;box-shadow:0 8px 28px #103f3610;z-index:2}.welcome-card h2{font-size:30px}.welcome-card p{font-size:14px;margin-top:18px}.welcome-card .text-link{display:inline-block;margin-top:20px}.welcome-brand{text-align:center;padding-top:20px}.welcome-brand .hf-logo{max-width:100%}.welcome-brand .hf-logo img{width:350px;max-width:100%}.welcome-brand p{font-size:16px;font-weight:600;margin:22px 0 0;color:var(--jade)}.hf-promise{position:relative;background:var(--mint-light);padding:65px 0 80px;border-radius:50% 50% 0 0/24px 24px 0 0}.promise-seals{display:flex;justify-content:center;gap:45px;margin-bottom:48px}.promise-seals>div{display:flex;align-items:center;flex-direction:column;gap:12px;font:700 11px HighFive,Arial,sans-serif;text-align:center}.promise-seals span{display:grid;place-items:center;width:62px;height:62px;border:2px solid var(--jade);outline:1px solid var(--jade);outline-offset:4px;border-radius:50%;font:700 34px DM,Arial;color:var(--ink);background:#f8fff4}.hf-overview{padding:80px 0}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.overview-grid p{font-size:15px;margin:21px 0}.overview-grid .button{margin-top:10px}.comparison-block{margin:0}.comparison{position:relative;overflow:hidden;border-radius:12px;aspect-ratio:1.12;background:#dde5db}.comparison>img,.comparison-before img{width:100%;height:100%;object-fit:cover;display:block}.comparison-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.comparison-divider{position:absolute;left:var(--reveal);top:0;bottom:0;width:3px;background:var(--cream);pointer-events:none;transform:translateX(-50%)}.comparison-divider span{display:grid;place-items:center;width:43px;height:43px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--cream);color:var(--ink);border-radius:50%;font-size:22px;font-weight:700}.comparison-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.comparison:focus-within{outline:3px solid var(--jade);outline-offset:4px}.compare-label{position:absolute;top:18px;background:#103f36dc;padding:7px 12px;color:#fffef7;font:11px HighFive,Arial;border-radius:4px;pointer-events:none}.before-label{left:18px}.after-label{right:18px}.comparison-block figcaption,.image-attribution{font-size:10px;color:#546b5e;text-align:center;line-height:1.6;margin-top:14px}.hf-services{background:#e5f4e8;padding:72px 0 55px;border-radius:50% 50% 0 0/24px 24px 0 0}.hf-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 40px;margin-top:42px}.hf-service-grid article{display:flex;flex-direction:column;align-items:flex-start;background:transparent}.hf-service-grid img{width:100%;aspect-ratio:2/1;height:auto;object-fit:cover;border-radius:10px}.hf-service-grid h3{margin:22px 0 0}.hf-service-grid p{font-size:14px;line-height:1.8;margin:15px 0 20px}.hf-service-grid .button{font-size:11px;margin-top:auto}.image-attribution{margin-top:35px}.hf-process{padding:75px 0 65px;background:#f9faf0}.process-heading{display:flex;align-items:center;justify-content:center;gap:35px;max-width:890px;margin:0 auto 40px}.process-heading img{width:100px;height:145px;object-fit:contain;flex-shrink:0}.process-heading p{font-size:14px;max-width:670px;margin-top:18px}.hf-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:1120px;margin:auto}.hf-tabs button{background:var(--mint-light);border:0;border-bottom:4px solid transparent;border-radius:6px 6px 0 0;padding:19px 10px;font:700 11px/1.4 HighFive,Arial;color:var(--ink);cursor:pointer}.hf-tabs button b{display:block;font:700 26px HighFive,Arial;margin-bottom:10px}.hf-tabs button[aria-selected=true]{background:var(--ink);border-color:var(--mint);color:var(--cream)}.hf-tab-panel{background:#e6f3e7;padding:32px 36px;max-width:1120px;margin:auto;min-height:170px;border-radius:0 0 8px 8px}.hf-tab-panel h3{font-size:21px}.hf-tab-panel p{max-width:940px;margin-top:12px;font-size:14px}.hf-tab-panel[hidden]{display:none}.process-action{margin-top:35px}.process-action h3{font-size:20px;margin-bottom:20px}.hf-why{position:relative;padding:85px 0;background:var(--ink);color:var(--cream);border-radius:50% 50% 0 0/24px 24px 0 0}.hf-why h2>span,.hf-why .eyebrow{color:var(--mint)}.hf-why p{color:#def0e3}.hf-checks{list-style:none;padding:0;margin:0;display:grid;gap:25px}.hf-checks li{display:flex;gap:20px}.hf-checks li>span{color:var(--mint);font-size:27px;font-weight:700}.hf-checks h3{font-size:19px}.hf-checks p{font-size:13px;margin:7px 0 0}.hf-areas{padding:75px 0;background:#c5ebd7;border-radius:0 0 50% 50%/0 0 22px 22px}.area-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:32px 0}.area-links a{font:18px HighFive,Arial;text-decoration:none;border-bottom:2px solid var(--jade);padding:18px 10px;display:flex;align-items:center;justify-content:space-between}.area-links a:hover{background:#ffffff45}.hf-faq{padding:80px 0}.hf-faq-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:35px}.hf-faq summary{font-size:15px;font-weight:700}.hf-faq details p{font-size:14px}.closing{background:#dff3e5;border-radius:50% 50% 0 0/25px 25px 0 0;color:var(--ink);padding:55px 0}.closing h2{font-size:34px}.closing .button{white-space:nowrap}.site-footer{background:#f9faf0;padding-top:55px}.footer-main .hf-logo img{width:240px}.footer-main{grid-template-columns:1.4fr 1fr 1fr}.footer-bottom{font-size:10px}.footer-bottom>span{max-width:730px}.page-hero h1{font-size:clamp(36px,4.6vw,62px)}.page-hero p{font-size:18px}.side-note{background:#dff3e5}.side-note h3{font-size:23px}.prose h2{font-size:29px}.report h2{font-size:29px}.report h3{font-size:21px}.metric strong{font-family:HighFive,Arial}.form-shell{background:#fffef7}.form-steps span.active{border-color:var(--jade)}.form-panel h2{font-size:30px}.menu-toggle{border-color:var(--jade);color:var(--ink)}.mobile-cta{background:var(--ink);border-color:var(--mint);color:var(--cream)}
.profile-lockup{display:flex;align-items:center;justify-content:center;gap:25px}.profile-logo{background:#dff3e5;border:1px solid #bad8c7;color:var(--ink)}.profile-lockup .hf-logo img{width:490px;max-width:100%;height:auto}.profile-lockup>img{width:115px;height:175px;object-fit:contain}.profile-logo p{margin-top:30px;color:var(--text);font-size:13px}.swatch{border-radius:10px;overflow:hidden}.brand-van-v3{position:relative;background:#e1f2e7;border-radius:14px;overflow:hidden}.brand-van-v3 .van-base{width:100%;display:block}.brand-van-v3 .van-mascot{position:absolute;width:11%;height:34%;left:15%;top:35%;object-fit:contain}.brand-van-v3 .van-logo{position:absolute;width:37%;height:auto;left:31%;top:35%;transform:rotate(-2deg)}.brand-van-v3 .van-line{position:absolute;left:33%;top:63%;font:700 clamp(9px,1.6vw,19px) HighFive,Arial;color:var(--ink);letter-spacing:.1em}.sample-ad{background:#c5ebd7}.sample-ad h3{font-size:34px}.section-head h2{font-size:35px}
@media(max-width:1080px){.wrap{padding:0 28px}.nav{gap:16px;font-size:11px}.nav .button{font-size:11px;padding:13px 15px}.logo.hf-logo img{width:215px}.header-inner{gap:20px;height:95px}.hf-hero h1{font-size:41px}.hf-hero h1 span{font-size:25px}.hf-hero-grid{grid-template-columns:1fr 210px}.hf-hero-mascot{width:210px;height:305px}.overview-grid{gap:35px}.welcome-grid{gap:35px}.welcome-card{padding:30px}.welcome-card h2{font-size:26px}h2{font-size:30px}.promise-seals{gap:30px}}
@media(max-width:760px){.wrap{padding:0 22px}.preview{font-size:8px;min-height:28px;padding:7px 10px}.preview a{margin-left:8px}.header-inner{height:87px}.site-header .hf-logo{margin-top:-7px}.logo.hf-logo img{width:170px}.menu-toggle{background:transparent;padding:10px;font-size:12px}.nav{top:87px;left:0;right:0;background:#c5ebd7;padding:22px;box-shadow:0 10px 20px #103f361a;gap:20px;font-size:14px}.nav .button{font-size:13px}.hf-hero{padding:66px 0 75px}.hero-arc{height:85px;top:-60px;box-shadow:0 8px 0 #9bd5ba,0 15px 0 #78b99b}.hf-hero-grid{grid-template-columns:1fr;gap:20px}.hf-hero h1{font-size:33px}.hf-hero h1 span{font-size:22px;margin-top:14px}.hf-hero-copy>p{font-size:10px;line-height:1.8;margin:20px 0}.hf-hero-copy>p br{display:none}.hf-hero .actions{gap:10px;margin-top:20px}.hf-hero .button{font-size:10px;padding:13px 12px}.hf-hero-mascot{width:115px;height:163px;justify-self:center;transform:rotate(3deg)}.reference-credit{right:15px;bottom:14px;font-size:8px}.welcome-grid{grid-template-columns:1fr;gap:24px}.welcome-card{padding:28px 25px;margin-top:-40px}.welcome-card h2{font-size:25px}.welcome-card p{font-size:14px}.welcome-brand{padding:4px 0 5px}.welcome-brand .hf-logo img{width:245px}.welcome-brand p{font-size:13px;margin-top:15px}.hf-welcome{padding-bottom:35px}.hf-promise{padding:45px 0 50px}.promise-seals{display:grid;grid-template-columns:1fr 1fr;gap:25px 18px;margin-bottom:35px}.promise-seals span{width:47px;height:47px;font-size:26px}.promise-seals>div{font-size:9px;gap:14px}.center-copy h2,h2{font-size:27px}.center-copy p{font-size:14px;margin-top:18px}.center-copy .actions{gap:10px}.button{font-size:11px;padding:13px 16px}.hf-overview{padding:48px 0}.overview-grid{grid-template-columns:1fr;gap:30px}.overview-grid p{font-size:14px}.comparison{aspect-ratio:1.05}.comparison-block figcaption{font-size:9px}.hf-services{padding:48px 0 35px}.hf-service-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.hf-service-grid h3{font-size:24px;margin-top:18px}.hf-service-grid p{font-size:14px;margin-top:12px}.hf-service-grid .button{font-size:10px}.hf-process{padding:48px 0}.process-heading{gap:15px;align-items:flex-start;margin-bottom:28px}.process-heading img{width:55px;height:90px}.process-heading h2{font-size:24px}.process-heading .eyebrow{font-size:9px}.process-heading p{font-size:13px}.hf-tabs{gap:4px}.hf-tabs button{padding:12px 3px;font-size:7px;line-height:1.5;overflow-wrap:anywhere}.hf-tabs button b{font-size:20px;margin-bottom:7px}.hf-tab-panel{padding:25px 20px;min-height:215px}.hf-tab-panel h3{font-size:20px}.hf-tab-panel p{font-size:13px}.process-action h3{font-size:19px}.hf-why{padding:55px 0}.hf-checks{gap:22px}.hf-checks h3{font-size:18px}.hf-areas{padding:50px 0}.area-links{gap:10px;margin:25px 0}.area-links a{font-size:12px;padding:13px 2px}.hf-areas .button{font-size:9px;padding:13px 10px}.hf-faq{padding:50px 0}.hf-faq-columns{grid-template-columns:1fr;gap:0;margin-top:25px}.hf-faq summary{font-size:14px}.closing{padding:40px 0}.closing h2{font-size:28px}.closing .wrap{display:block}.closing .button{margin-top:22px}.site-footer{padding-top:40px}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-main>div:first-child{grid-column:1/-1}.footer-main .hf-logo img{width:220px}.footer-bottom{font-size:9px;line-height:1.7}.page-hero h1{font-size:35px}.page-hero p{font-size:16px}.prose h2,.report h2{font-size:25px}.form-panel h2{font-size:25px}.profile-logo{padding:40px 20px}.profile-lockup{gap:10px}.profile-lockup .hf-logo{min-width:0}.profile-lockup .hf-logo img{width:220px}.profile-lockup>img{width:50px;height:90px}.profile-logo p{font-size:11px}.brand-van-v3 .van-line{font-size:8px}.sample-ad h3{font-size:28px}.section-head h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.hero-arc{left:0;top:0;width:100%;height:68px;background:transparent;border-radius:0;box-shadow:none;pointer-events:none}.hero-arc svg{display:block;width:100%;height:100%}@media(max-width:760px){.hero-arc{top:0;height:42px;box-shadow:none}}
@media(max-width:760px){.hf-tabs{display:flex;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#47896d #dff3e5;gap:7px}.hf-tabs button{flex:0 0 133px;padding:15px 8px;font-size:10px;min-height:93px}.hf-tabs button b{font-size:24px}}

/* Swedish image composition: preserve the complete villa in the comparison. */
.comparison{aspect-ratio:3/2}.comparison>img,.comparison-before img{object-position:center}.hf-service-grid img[src$="swedish-villa-after.webp"]{object-position:65% 51%}

/* Public launch: contact, readable titles and responsive spacing. */
.site-header .hf-logo{margin-top:0}.header-inner{min-height:112px;height:auto;padding-top:8px;padding-bottom:8px}.hf-hero h1{font-size:44px}.hf-hero h1 span{font-size:25px}.hf-hero-copy>p{max-width:680px;margin:25px auto}.contact-layout{display:grid;grid-template-columns:.8fr 1.5fr;gap:40px;align-items:start;padding-bottom:60px}.contact-card{background:#dff3e5;border:1px solid var(--line);border-radius:12px;padding:30px}.contact-card h2{font-size:27px;margin-bottom:22px}.contact-card p{font-size:14px;margin:23px 0}.contact-layout .form-shell{margin:0;padding:30px}.form-shell>h2{font-size:27px;margin-bottom:20px}.form-shell p{font-size:14px}.summary-box{font-family:DM,Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.small-copy{margin-top:18px}#enquiry-result{margin-top:32px;border-top:1px solid var(--line);padding-top:28px}#enquiry-result h3{font-size:24px}.side-note a{overflow-wrap:anywhere}.prose h2{line-height:1.3}.footer-bottom{flex-wrap:wrap;gap:15px}.site-footer a{overflow-wrap:anywhere}@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.contact-card{order:0}.contact-layout .form-shell{order:1}.header-inner{min-height:94px}.hf-hero h1{font-size:33px}.hf-hero h1 span{font-size:22px}}@media(max-width:480px){.contact-layout .form-shell,.contact-card{padding:22px}.fields{grid-template-columns:1fr;gap:0}.form-shell .button{width:100%}.hf-hero h1{font-size:31px}.hf-hero h1 span{font-size:20px}.nav{top:94px}.hf-hero-copy>p{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
