:root{--paper:#f7f5ef;--ink:#253732;--muted:#59635c;--sand:#e9e5db;--line:#c9cdc2;--accent:#274d40;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(3.4rem,5.6vw,6.4rem)}h2{font-size:clamp(2.5rem,4vw,4.2rem)}h3{font-size:1.85rem}h1 em,h2 em{font-weight:400}p+p{margin-top:1.2rem}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}[hidden]{display:none!important}:focus-visible{outline:3px solid #8d4d25;outline-offset:5px}section,article[id],#main,input,select,.request-text,h3[tabindex]{scroll-margin-top:125px}.skip-link{position:fixed;z-index:20;top:-100px;left:1rem;background:var(--ink);color:white;padding:.8rem 1rem}.skip-link:focus{top:1rem}.preview-note{font-size:.67rem;letter-spacing:.035em;background:var(--sand);text-align:center;padding:.4rem 1rem}.site-header{position:sticky;top:0;z-index:10;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.45rem 5vw;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;text-decoration:none;font-size:1.1rem;letter-spacing:.22em;line-height:1.25;font-weight:600}.brand span:last-child{letter-spacing:.19em}.site-header nav{display:flex;gap:1.8rem;align-items:center;font-size:.79rem}.site-header nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:underline}.nav-contact{gap:1.5rem;border-bottom:1px solid var(--ink)}#menu-toggle{display:none;border:0;background:transparent;color:var(--ink);min-height:44px;padding:.4rem;font-size:.85rem}#menu-toggle span{margin-left:.7rem}.eyebrow,.card-index{font-size:.68rem;letter-spacing:.13em;font-weight:600;line-height:1.7}.eyebrow{margin-bottom:1.6rem}.hero{padding:5.5rem 5vw 5.5rem;max-width:1600px;margin:auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:7vw;align-items:center}.hero .intro{max-width:52ch;margin:1.8rem 0 2rem;color:var(--muted);font-size:1.07rem;line-height:1.75}.hero .eyebrow{max-width:45ch}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:2rem;min-height:54px;max-width:100%;background:var(--accent);color:var(--white);border:1px solid var(--accent);border-radius:0;padding:.9rem 1.3rem;text-decoration:none;font-size:.85rem;line-height:1.5;text-align:left}.button:hover{background:#1c3b30}.button span,.text-link span{font-size:1.2rem;flex-shrink:0}.portrait{background:#e0e3d9;align-self:end;padding:2rem 2rem 0;max-width:460px;width:100%;justify-self:end}.portrait img{width:100%;height:auto;aspect-ratio:auto}.portrait figcaption{background:var(--paper);margin:0 -2rem;padding:1.1rem 0 0;font-size:.8rem;display:flex;justify-content:space-between;gap:1rem}.portrait figcaption span{color:var(--muted);font-size:.7rem}.proof-strip{padding:1.8rem 5vw;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-block:1px solid var(--line);max-width:1600px;margin:auto}.proof-strip p{margin:0;display:flex;flex-direction:column}.proof-strip strong{font-family:var(--serif);font-weight:400;font-size:2.1rem;letter-spacing:-.025em}.proof-strip span{font-size:.74rem;color:var(--muted)}.section{padding:6rem 5vw;max-width:1600px;margin:auto}.section-head{margin-bottom:3rem;max-width:850px}.muted-section{background:var(--sand)}.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.offer-card{padding:2.5rem;border:1px solid var(--line);display:flex;flex-direction:column;align-items:start}.offer-card h3{font-size:2.45rem;max-width:17ch;margin:1.5rem 0 1rem}.offer-card>p:not(.card-index){max-width:50ch;font-size:.98rem;color:var(--muted);margin-bottom:2rem}.text-link{display:inline-flex;gap:2rem;align-items:center;min-height:44px;text-decoration:none;border-bottom:1px solid currentColor;font-size:.85rem;line-height:1.5;padding:.45rem 0;max-width:100%}.offer-card .text-link{margin-top:auto}.featured-card{background:var(--accent);color:var(--paper);border-color:var(--accent)}.featured-card>p:not(.card-index){color:#e1e7df}.split-copy,.scope-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7vw}.lead{font-size:1.3rem;line-height:1.7}.split-copy p:not(.lead),.scope-grid p{font-size:.98rem;color:var(--muted)}.split-copy .text-link{margin-top:1.5rem}.narrow{max-width:70ch}.narrow+.narrow{margin-top:1.5rem;color:var(--muted)}.editorial-panel{padding:2.8rem;background:var(--sand)}.editorial-quote{font-family:var(--serif);font-size:clamp(1.8rem,2.4vw,2.6rem);line-height:1.45;letter-spacing:-.035em;margin-bottom:1.8rem}.editorial-panel>p:last-child{font-size:.88rem;color:var(--muted)}.price-card{padding:2.8rem;background:var(--accent);color:var(--paper)}.price-card h2{font-size:clamp(3rem,4vw,4.5rem);margin:1.5rem 0}.price-card h2 span{display:block;font-family:var(--sans);font-size:.83rem;letter-spacing:0;margin-top:.8rem}.price-card>p:not(.eyebrow),.price-card li{font-size:.89rem;line-height:1.7}.price-card ul{padding-left:1.1rem;margin:1.7rem 0}.price-card li+li{margin-top:.65rem}.price-card .text-link{font-size:.82rem}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 4vw}.steps li{display:flex;gap:1.5rem;border-top:1px solid #a9b3a6;padding-top:1.5rem;min-width:0}.step-number{font-size:.76rem;color:var(--muted);padding-top:.2rem}.steps h3{font-size:1.8rem;margin-bottom:.9rem}.steps p{font-size:.96rem;color:var(--muted);max-width:48ch}.scope-grid h3{font-size:1.75rem;margin-bottom:1.1rem}.scope-grid p+h3{margin-top:2rem}.check-list{margin:0;padding-left:1.2rem}.check-list li+li{margin-top:.65rem}.case-card{padding:2.5rem;border-left:3px solid var(--accent);background:var(--sand)}.case-card h3,.synthetic-case h3{font-size:2.7rem;margin-bottom:1.5rem}.case-card .lead{max-width:65ch}.case-card p:last-child{max-width:65ch;font-size:.94rem}.synthetic-case{margin-top:3rem;max-width:75ch}.synthetic-case dl{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border-block:1px solid var(--line);padding:1.5rem 0;margin:1.5rem 0}.synthetic-case dt{font-weight:600;font-size:.86rem}.synthetic-case dd{margin:.6rem 0 0;font-size:.91rem}.fineprint{font-size:.78rem;color:var(--muted)}.terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem 5vw;margin:0}.terms>div{border-top:1px solid #b3bcad;padding-top:1.3rem}.terms dt{font-weight:600;font-size:.88rem}.terms dd{margin:.65rem 0 0;font-size:.96rem;color:var(--muted)}.three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}.three-columns h3{margin-bottom:1rem}.three-columns p{font-size:.96rem;color:var(--muted)}.image-copy{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:5vw}.gym-photo img{width:100%;height:auto}.gym-photo figcaption{font-size:.9rem;line-height:1.6;color:var(--muted);padding-top:.8rem}.image-copy>div p:not(.lead){font-size:.96rem;color:var(--muted)}
.contact-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw;border-top:1px solid var(--line)}.contact-intro{margin:1.8rem 0;max-width:35ch}.contact-person{font-size:.96rem;line-height:1.9}.email{overflow-wrap:anywhere}.demo-note{border-left:2px solid #8c9a87;background:var(--sand);padding:1rem 1.3rem;max-width:43ch;margin-top:2rem;font-size:.82rem}.demo-note p{margin-top:.5rem;color:var(--muted)}.contact-panel{padding:2.5rem;background:var(--sand)}.contact-panel .eyebrow{margin-bottom:1.5rem}.field{margin:0 0 1.3rem}.field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.45rem}.field input,.field select{border:1px solid #8b988b;border-radius:0;width:100%;min-height:48px;padding:.65rem .8rem;background:var(--paper);color:var(--ink)}.field input::placeholder{color:#677066;opacity:1}.check-field{display:flex;gap:.8rem;font-size:.81rem;align-items:start;line-height:1.6;margin:1.5rem 0 .4rem}.check-field input{flex-shrink:0;width:19px;height:19px;accent-color:var(--accent);margin:3px 0 0}.field-error,.error-summary{font-size:.81rem;color:#8a291d;line-height:1.5;margin-top:.4rem}.field-error:empty,.error-summary:empty{display:none}.error-summary{padding:.8rem;border:1px solid #9d3c28;margin-bottom:1.5rem}[aria-invalid=true]{border-color:#9d3c28!important}.contact-panel .button{width:100%;margin-top:1.3rem}.quiet-button{display:block;min-height:44px;border:0;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:4px;margin:1rem auto 0;font-size:.81rem}.contact-panel h3{font-size:2.4rem;margin-bottom:1.5rem}.review-values{margin:1.7rem 0}.review-values>div{padding:.9rem 0;border-top:1px solid #b5bdaf}.review-values dt{font-size:.72rem;color:var(--muted)}.review-values dd{margin:.4rem 0 0;overflow-wrap:anywhere;font-size:.95rem}.site-footer{padding:3rem 5vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:2rem;font-size:.75rem;align-items:start}.footer-brand{font-family:var(--serif);font-size:1.5rem;text-decoration:none;line-height:1.2}.site-footer p{margin:0}.site-footer>a:last-child{min-height:44px}
@media(max-width:1100px){.site-header nav{gap:1rem;font-size:.73rem}.hero{gap:4vw}.hero h1{font-size:4rem}.editorial-panel,.price-card{padding:2rem}.offer-card{padding:2rem}.portrait{padding:1rem 1rem 0}.portrait figcaption{margin:0 -1rem;display:block}.portrait figcaption span{display:block}.contact-panel{padding:1.8rem}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.site-header{padding:1rem 6vw;flex-wrap:wrap;gap:.8rem}.brand{font-size:.94rem}#menu-toggle:not([hidden]){display:block}.site-header nav{width:100%;flex-wrap:wrap;gap:.3rem 1.3rem;font-size:.85rem;padding-top:.6rem}.has-js .site-header nav{display:none}.has-js .site-header nav.is-open{display:flex}.hero{padding:3.2rem 6vw;grid-template-columns:1fr;gap:2.6rem}.hero h1{font-size:clamp(2.7rem,9.8vw,4.7rem)}.hero .intro{font-size:1rem;max-width:49ch;margin:1.5rem 0 1.8rem}.eyebrow,.card-index{font-size:.61rem}.hero .eyebrow{margin-bottom:1.6rem}.portrait{max-width:360px;justify-self:start;padding:1rem 1.7rem 0}.portrait figcaption{margin:0 -1.7rem;display:flex}.portrait figcaption span{font-size:.65rem}.proof-strip{padding:1.5rem 6vw;gap:1rem}.proof-strip strong{font-size:1.3rem;line-height:1.3}.proof-strip span{font-size:.62rem;line-height:1.5;margin-top:.4rem}.section{padding:3.7rem 6vw}.section-head{margin-bottom:2.2rem}h2{font-size:clamp(2.45rem,8.5vw,3.8rem)}.offer-grid,.split-copy,.scope-grid,.steps,.terms,.three-columns,.image-copy,.contact-section{grid-template-columns:1fr;gap:2.2rem}.offer-grid{gap:1.2rem}.offer-card{padding:1.8rem}.offer-card h3{font-size:2.1rem}.offer-card>p:not(.card-index){font-size:.93rem}.lead{font-size:1.16rem}.editorial-panel,.price-card{padding:2rem}.price-card h2{font-size:3.7rem}.editorial-quote{font-size:2.05rem}.steps{gap:2rem}.steps h3{font-size:1.7rem}.steps p{font-size:.94rem}.case-card{padding:1.7rem}.case-card h3,.synthetic-case h3{font-size:2.3rem}.synthetic-case dl{grid-template-columns:1fr;gap:1.3rem}.contact-panel{padding:1.4rem}.demo-note{max-width:none}.contact-intro{max-width:42ch}.contact-section{gap:2.5rem}.site-footer{padding:2.7rem 6vw;gap:1.7rem;font-size:.72rem}.site-footer>a:last-child{justify-self:start}section,article[id],#main,input,select,.request-text,h3[tabindex]{scroll-margin-top:110px}}
@media(max-width:360px){.hero h1{font-size:2.8rem}.button{gap:1rem;padding:.9rem 1rem}.proof-strip{grid-template-columns:1fr;gap:1rem}.proof-strip p{flex-direction:row;gap:.8rem;align-items:baseline}.proof-strip strong{font-size:1.4rem}.proof-strip span{font-size:.7rem}.offer-card{padding:1.4rem}.text-link{gap:1rem}.editorial-panel,.price-card{padding:1.6rem}.contact-panel{padding:1.2rem}.site-footer{grid-template-columns:1fr}.portrait figcaption{display:block}.steps li{gap:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{.site-header,.contact-panel,.skip-link,.hero .button{display:none}body{background:white;color:black}.hero,.section{padding:1.7rem 0}.hero h1{font-size:35pt}h2{font-size:25pt}.section,.hero,.price-card,.offer-card{break-inside:avoid}.price-card,.featured-card{background:white;color:black}.site-footer{display:block}.site-footer p{margin-top:.8rem}}
.coaching-distinction>.lead{max-width:70ch;margin-bottom:2.4rem}.case-timeline{border-left:1px solid #aeb8ab;margin-left:1rem}.timeline-entry{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,2fr);gap:3vw;position:relative;padding:0 0 4rem 3rem}.timeline-entry:before{content:'';width:13px;height:13px;border-radius:50%;background:var(--accent);position:absolute;left:-7px;top:10px}.timeline-entry:last-child{padding-bottom:0}.timeline-marker{font-family:var(--serif);font-size:2.6rem;line-height:1.2;letter-spacing:-.035em}.timeline-copy{max-width:850px}.timeline-copy .eyebrow{margin-bottom:.9rem}.timeline-copy h3{font-size:2.4rem;margin-bottom:1.3rem}.timeline-copy>p:not(.eyebrow){max-width:65ch}.timeline-copy figure{margin-top:1.8rem}.case-photo img{width:100%;height:auto;object-fit:contain}.case-photo figcaption{font-size:.9rem;line-height:1.6;color:var(--muted);margin-top:.7rem}.permission-note{font-size:.78rem!important;color:#5c5140;border-top:1px solid #bbb8a9;padding-top:1rem;margin-top:1.5rem!important}.case-grid-section>[data-release-status],.case-grid-section>#club-dahlia{margin-top:3rem}
@media(max-width:800px){.timeline-entry{grid-template-columns:1fr;gap:1.2rem;padding-left:1.5rem;padding-bottom:3rem}.timeline-marker{font-size:2.1rem}.timeline-copy h3{font-size:2rem}.case-timeline{margin-left:.4rem}}

.case-photo-portrait{max-width:480px}.case-card>.case-photo{margin-top:1.8rem}
/* Reserve the photo column before a lazy image has intrinsic dimensions. */
.section>.lead+.steps{margin-top:2.5rem}.three-columns+.fineprint{margin-top:1.7rem}.case-card-with-image{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;align-items:start}.case-card-with-image>.case-photo{width:100%;margin-top:0;justify-self:end}
@media(max-width:800px){.case-card-with-image{grid-template-columns:1fr;gap:2rem}.case-card-with-image>.case-photo{justify-self:start}}

:focus-visible{outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px #253732}.not-found-links{display:flex;align-items:center;flex-wrap:wrap;gap:2rem;margin-top:2.5rem}.not-found-links a{min-height:44px}main.section>h1{max-width:16ch}main.section>.intro{margin-top:1.5rem}

/* Keep links and buttons below the sticky header when tabbing backwards. */
a,button{scroll-margin-top:125px}
@media(max-width:800px){a,button{scroll-margin-top:110px}}

.portrait img{aspect-ratio:640/706}

/* Peer-site navigation keeps the gym and umbrella brand distinct. */
.cross-site-link{color:inherit;text-decoration:underline;text-underline-offset:.22em;overflow-wrap:anywhere}.related-site{font-size:.9rem;line-height:1.8;max-width:70ch;margin-top:2rem}.site-footer .cross-site-link{display:inline-block;margin-top:.6rem;line-height:1.8}

.request-text{display:block;box-sizing:border-box;width:100%;max-width:100%;min-height:18rem;margin:.7rem 0 1rem;padding:.85rem;border:1px solid #8b988b;background:var(--paper);color:var(--ink);font:inherit;line-height:1.55;resize:vertical}.request-text:focus-visible{outline:3px solid #a77928;outline-offset:3px}#request-email[aria-disabled=true]{pointer-events:none}#request-status{min-height:1.5em;overflow-wrap:anywhere}
.hotel-hero .editorial-panel h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.15;margin-bottom:1.4rem}
.hotel-hero .editorial-panel .text-link{margin-top:1.2rem}
body[data-contact-context="hotel"] #nytta .three-columns{margin-bottom:2rem}
body[data-contact-context="hotel"] #omfattning>.scope-grid{margin-top:2.4rem}
body[data-contact-context="hotel"] .steps h3{overflow-wrap:anywhere;hyphens:auto}
.site-header .nav-peer{gap:.4rem;white-space:nowrap;border-left:1px solid var(--line);padding-left:1rem}
@media(max-width:800px){html:not(.has-js) .site-header{position:static}}
.email-draft{margin-top:1.4rem}.email-draft summary{cursor:pointer;min-height:44px;padding:.6rem 0;scroll-margin-top:150px}.email-draft summary+p{margin-top:.6rem}.email-draft pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;background:var(--paper);color:var(--ink);padding:1rem;margin:.8rem 0}.email-draft [role=status]:not(:empty){margin-top:.8rem}

/* Three photographed projects, with full images and one reading order at every width. */
.project-intro{max-width:58ch;margin-bottom:3.5rem}.project-list{display:grid;gap:4.5rem}.project-case{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:4.5vw;align-items:center;border-top:1px solid var(--line);padding-top:2.5rem}.project-case:nth-child(even)>.project-photo{order:2}.project-copy{max-width:48ch}.project-copy .eyebrow{margin-bottom:1rem}.project-copy h3{font-size:clamp(2.1rem,3.2vw,3.4rem);margin-bottom:1.5rem}.project-copy p:not(.eyebrow){color:var(--muted);font-size:1rem}.project-copy .project-role{color:var(--ink)}.project-copy .text-link{margin-top:1.7rem}.project-photo{width:100%}.project-photo img{width:100%;height:auto;object-fit:contain}.project-photo-portrait img{max-width:400px;margin-inline:auto}.project-photo figcaption{font-size:.9rem;line-height:1.6;color:var(--muted);margin-top:.8rem}.project-context{margin-top:3rem}
@media(max-width:800px){.project-intro{margin-bottom:2.5rem}.project-list{gap:3rem}.project-case{grid-template-columns:1fr;gap:1.8rem;padding-top:1.8rem}.project-case:nth-child(even)>.project-photo{order:0}.project-copy{max-width:none}.project-copy h3{font-size:clamp(2rem,7.5vw,3rem)}.project-photo-portrait img{max-width:400px}.project-copy .text-link{margin-top:1.3rem}}
