@font-face{font-family:'Cormorant Upright';src:url('assets/CormorantUpright.ttf');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/Manrope.ttf');font-weight:200 800;font-display:swap}
:root{--mint:#C8D2C9;--forest:#3C583E;--paper:#F2F2F2;--blush:#E2CDC4;--rose:#BF8079;--ease:cubic-bezier(.16,1,.3,1);color-scheme:light;scrollbar-color:var(--forest) var(--mint)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--forest);background:var(--paper);font:15px/1.75 Manrope,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Upright',serif;font-weight:500;letter-spacing:-.025em;line-height:1.02;text-wrap:balance}h1{font-size:96px}h2{font-size:60px}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none;flex-shrink:0}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:6px}::selection{background:var(--forest);color:var(--paper)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;z-index:40;background:var(--forest);color:var(--paper);padding:10px 20px}.skip:focus{top:12px}
.world,.paper-world{position:fixed;inset:0;pointer-events:none;z-index:-2}.world{background:var(--mint);overflow:hidden}.branch{position:absolute;right:-3%;bottom:-33%;width:54%;height:125%;object-fit:contain;transform:rotate(-20deg)}.paper-world{background:var(--paper);opacity:0;z-index:-1}.header{position:fixed;left:0;top:0;z-index:10;width:100%;display:flex;align-items:center;justify-content:space-between;padding:30px 5%;gap:28px}.brand{font:500 34px/.95 'Cormorant Upright',serif;letter-spacing:-.025em;text-decoration:none;white-space:nowrap}.brand small{display:block;font:11px/1.4 Manrope,sans-serif;letter-spacing:.2em;margin-top:9px}.header>nav{display:flex;gap:4px;padding:7px;border-radius:40px;background:rgb(242 242 242 / .68)}.header nav a,.header nav button{font-size:12px;padding:10px 19px;text-decoration:none;border:0;background:transparent;border-radius:30px;white-space:nowrap}.header nav a:hover,.header nav button:hover{background:var(--forest);color:var(--paper)}.header-cta{display:inline-flex;align-items:center;gap:24px;background:var(--forest);color:var(--paper);border-radius:40px;padding:16px 22px;font-size:12px;text-decoration:none}.header-cta svg{width:16px;height:16px}.menu-toggle{display:none;border:0;background:var(--paper);padding:13px 22px;border-radius:30px}.hero{height:100svh;min-height:780px;position:relative}.hero-copy{padding:200px 0 130px 7%;max-width:710px}.hero h1 span{display:block}.hero-copy>p{font-size:16px;max-width:39ch;margin-top:30px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:30px;padding:9px 9px 9px 26px;border-radius:50px;background:var(--paper);color:var(--forest);font-size:13px;text-decoration:none}.button>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--paper);overflow:hidden}.button svg{transition:transform .45s var(--ease)}.button:hover svg{transform:rotate(-45deg)}.text-link{background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:5px;font-size:13px}.hero-foot{position:absolute;left:7%;right:7%;bottom:28px;display:flex;justify-content:space-between;align-items:center;font-size:11px}.hero-foot a{display:inline-flex;align-items:center;gap:18px;text-decoration:none}.hero-foot svg{width:16px;height:16px}
.change-scene{position:relative;height:calc(100svh + 500px)}.change-pin{position:sticky;top:0;min-height:500px;height:500px;display:flex;justify-content:center}.change-content{width:100%;padding:clamp(180px,27vh,244px) 24px 0;text-align:center}.begin-toggle{display:inline-flex;align-items:center;gap:17px;border:0;background:none;padding:8px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:30px}.track{width:58px;height:32px;padding:4px;border-radius:30px;background:rgb(60 88 62 / .28);display:block}.knob{display:block;width:24px;height:24px;border-radius:50%;background:var(--paper);}.copy-stage{position:relative;max-width:970px;margin:0 auto}.copy-stage p{font-size:14px;line-height:1.8;margin-top:30px}.after-copy em{font-style:normal;color:var(--forest)}.after-copy{display:none}.js .after-copy{position:absolute;inset:0;display:block;opacity:0;visibility:hidden}.js .copy-stage{height:240px}.no-motion .change-scene{height:auto;padding:30px 0 70px}.no-motion .change-pin{position:relative;height:auto;min-height:0}.no-motion .change-content{padding-top:80px}.no-motion .before-copy{display:none}.no-motion .after-copy{position:relative;opacity:1;visibility:visible}.no-motion .copy-stage{height:auto}.no-motion .begin-toggle{display:none}.no-motion .paper-world{opacity:1}
.services{position:relative;padding:70px 5% 65px;background:var(--paper);scroll-margin-top:60px}.panels{max-width:1360px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:center}.panel{position:relative;isolation:isolate;display:block;overflow:hidden;height:600px;clip-path:inset(60px 0);background:var(--forest);color:var(--paper);text-decoration:none;text-align:left;border:0;padding:0;width:100%;font:inherit}.panel:nth-child(2){clip-path:inset(35px 0)}.panel>img,.shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.panel:nth-child(1)>img{object-position:65% 50%}.panel:nth-child(2)>img{object-position:42% 50%}.panel:nth-child(3)>img{object-position:32% 50%}.shade{z-index:-1;background:rgb(15 35 24 / .46)}.panel:nth-child(3) .shade{background:rgb(15 35 24 / .55)}.panel h3{font-size:44px;position:absolute;left:28px;right:20px;top:28px;transform:translateY(60px);max-width:12ch}.panel:nth-child(2) h3{transform:translateY(35px)}.panel>p{position:absolute;left:28px;right:28px;top:65%;font-size:13px;line-height:1.75;max-width:36ch}.panel-action{position:absolute;left:28px;right:28px;bottom:25px;display:flex;align-items:center;gap:12px;transform:translateY(-60px);font-size:11px}.panel:nth-child(2) .panel-action{transform:translateY(-35px)}.panel-action i{width:4px;height:4px;flex-shrink:0;border-radius:50%;background:currentColor}.panel-action>span{opacity:0;transform:translateX(-9px)}.panel-action svg{margin-left:auto;width:16px;height:16px;opacity:0;transform:translateX(-9px)}.panel:focus-visible{outline:3px solid var(--forest);outline-offset:8px;clip-path:inset(0)}.study-footer{background:var(--paper);padding:25px 5%;display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;font-size:11px}.study-footer .text-link{font-size:11px}.intro{display:none;position:fixed;inset:0;z-index:30;background:var(--forest);color:var(--paper);place-items:center;pointer-events:none}.intro>div{font:500 64px/.95 'Cormorant Upright',serif;text-align:center}.intro small{display:block;font:11px/1.4 Manrope,sans-serif;letter-spacing:.22em;margin-top:18px}
dialog{position:fixed;inset:0;width:min(900px,calc(100% - 40px));max-height:calc(100svh - 40px);border:0;padding:0;overflow:auto;background:var(--paper);color:var(--forest)}dialog[open]{display:grid;grid-template-columns:43% 1fr}dialog::backdrop{background:rgb(12 30 19 / .72)}dialog>img{width:100%;height:100%;min-height:560px;max-height:670px;object-fit:cover;object-position:50% 12%}dialog>div{padding:80px 44px 50px}dialog h2{font-size:54px;margin-bottom:24px}dialog p{font-size:14px;margin-bottom:20px}dialog .button{background:var(--mint);margin-top:10px}.close-dialog{position:absolute;top:15px;right:15px;width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--paper);z-index:1}.no-script{padding:30px 5%;background:var(--paper)}body:has(dialog[open]){overflow:hidden}
.shade,.panel:nth-child(3) .shade{background:linear-gradient(180deg,rgb(15 35 24 / .62) 30%,rgb(15 35 24 / .16) 45%,rgb(15 35 24 / .75) 65%)} /* taste-skill-ignore: neutral photo scrim preserves readable text over supplied imagery */.header{transition:background-color .4s ease}.header.on-paper{background:var(--paper)}.panel:focus-visible:after{content:'';position:absolute;inset:8px;border:2px solid var(--paper);pointer-events:none}.hero-foot a{background:var(--paper);border-radius:30px;padding:8px 14px}html:not(.js) .change-scene{height:auto;padding:40px 0 80px}html:not(.js) .change-pin{position:relative;height:auto;min-height:0}html:not(.js) .change-content{padding-top:60px}html:not(.js) .begin-toggle{display:none}
/* A tighter opening keeps tall windows from turning into a large empty canvas. */
.hero{height:clamp(780px,100svh,900px)}.branch{top:100px;bottom:auto;height:940px;width:56%;right:-5%}.change-scene{height:calc(100svh + 320px)}
@media(min-width:1600px){.hero-copy{padding-top:220px;max-width:760px}.branch{right:0;width:55%}}
@media(max-width:1100px){.header{padding:26px 5%}.header-cta{display:none}.hero-copy{max-width:580px;padding-top:190px}.hero h1{font-size:86px}.branch{right:-14%;width:66%;bottom:-31%}.panel h3{font-size:37px;left:22px}.panel>p,.panel-action{left:22px;right:22px}.copy-stage h2{font-size:53px}.panel{height:570px}.panel-action{font-size:10px}.header>nav a,.header>nav button{padding-inline:15px}}
@media(max-width:720px){html{scroll-padding-top:90px}.header{padding:22px 24px;gap:15px}.brand{font-size:28px}.brand small{font-size:9px;letter-spacing:.18em}.header>nav{display:none}.menu-toggle{display:block;font-size:12px}.header #phone-menu{position:absolute;display:flex;flex-direction:column;top:85px;right:24px;padding:14px;border-radius:20px;background:var(--paper);box-shadow:0 12px 35px rgb(15 35 24 / .12)}.hero{height:100svh;min-height:960px}.hero-copy{padding:175px 24px 0;max-width:none}.hero h1{font-size:clamp(56px,15.4vw,85px)}.hero-copy>p{font-size:14px;max-width:35ch;margin-top:26px}.hero-actions{gap:23px;margin-top:25px;flex-wrap:wrap}.button{font-size:12px;gap:21px;padding-left:22px}.button>span{width:40px;height:40px}.text-link{font-size:12px}.branch{width:115%;height:65%;right:-36%;bottom:-15%;transform:rotate(-18deg)}.hero-foot{left:24px;right:24px;bottom:20px;font-size:9px}.hero-foot>span{max-width:18ch}.hero-foot a{gap:8px;max-width:18ch;text-align:right}.change-content{padding:180px 24px 0}.change-scene{height:calc(100svh + 480px)}.change-pin{height:550px}.copy-stage h2{font-size:43px;line-height:1.06}.copy-stage h2 br{display:none}.copy-stage p{font-size:13px;margin-top:24px}.begin-toggle{margin-bottom:25px}.copy-stage{max-width:420px}.services{padding:10px 24px 40px}.panels{grid-template-columns:1fr;gap:0;max-width:470px}.panel,.panel:nth-child(2){height:490px;clip-path:inset(20px 0)}.panel h3,.panel:nth-child(2) h3{font-size:42px;left:25px;top:25px;transform:translateY(20px)}.panel>p{font-size:13px;top:62%;left:25px;right:25px;max-width:31ch}.panel-action,.panel:nth-child(2) .panel-action{left:25px;right:25px;bottom:35px;transform:translateY(-20px)}.panel-action>span,.panel-action svg{opacity:1;transform:none}.study-footer{padding:20px 24px;display:block}.study-footer>*{display:block;margin-bottom:12px}dialog[open]{display:block;width:calc(100% - 28px);max-height:calc(100svh - 28px)}dialog>img{height:310px;min-height:0;object-position:50% 15%}dialog>div{padding:32px 26px}dialog h2{font-size:47px}dialog p{font-size:13px}.intro>div{font-size:49px}}
@media(min-width:721px) and (max-width:1100px){.branch{width:70%;right:-42%}}
@media(min-width:901px) and (max-width:1100px){.branch{width:66%;right:-26%}}
@media(max-width:720px){.branch{top:auto;height:60%;bottom:-24%}.change-scene{height:calc(100svh + 300px)}}
@media(max-width:360px){.hero{min-height:920px}.hero-copy{padding-top:155px}.hero h1{font-size:52px}.hero-actions{gap:18px}.hero-copy>p{font-size:13px}.copy-stage h2{font-size:38px}.panel h3{font-size:37px}.panel>p{font-size:12px}.header{padding-inline:20px}}
/* Restore the previously selected Helora controls; colours and type remain Clara's. */
.header>nav{background:rgb(242 242 242 / .2);backdrop-filter:blur(22px);gap:0;padding:8px}
.header nav a,.header nav button{position:relative;isolation:isolate;background:transparent;transition:color .25s}
.header nav a:before,.header nav button:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:40px;background:var(--paper);opacity:0;transform:scale(0);transition:transform .35s var(--ease),opacity .25s}
.header nav a:is(:hover,:focus-visible),.header nav button:is(:hover,:focus-visible){background:transparent;color:var(--forest)}
.header nav a:is(:hover,:focus-visible):before,.header nav button:is(:hover,:focus-visible):before{opacity:1;transform:scale(1)}
.button,.header-cta{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:16px;min-height:56px;padding:8px 8px 8px 26px;border-radius:60px;line-height:24px;transition:color .4s linear;background:var(--paper);color:var(--forest)}
.header-cta{background:rgb(242 242 242 / .1);backdrop-filter:blur(22px)}
.button:before,.header-cta:before{content:'';position:absolute;inset:0;z-index:0;border-radius:60px;background:var(--forest);clip-path:inset(8px 8px 8px calc(100% - 48px) round 999px);transition:clip-path .4s linear}
.header-cta:before{background:var(--paper)}
.button>.button-label,.header-cta>.button-label{position:relative;z-index:1;width:auto;height:auto;display:inline;border-radius:0;background:transparent;color:inherit;overflow:visible;white-space:nowrap}
.button>.button-icon,.header-cta>.button-icon{position:relative;z-index:1;flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--forest);color:var(--paper);transition:color .4s linear,background .4s linear}
.header-cta>.button-icon{background:var(--paper);color:var(--forest)}
.button svg,.header-cta svg{width:16px;height:16px;stroke-width:2;transition:transform .4s linear}
.button:is(:hover,:focus-visible){color:var(--paper)}
.button:is(:hover,:focus-visible):before,.header-cta:is(:hover,:focus-visible):before{clip-path:inset(0 round 60px)}
.button:is(:hover,:focus-visible)>.button-icon{background:var(--paper);color:var(--forest)}
.header-cta:is(:hover,:focus-visible)>.button-icon{background:var(--forest);color:var(--paper)}
.button:is(:hover,:focus-visible) svg,.header-cta:is(:hover,:focus-visible) svg{transform:rotate(-45deg)}
@media(max-width:1100px){.header-cta{display:none}}
@media(max-width:720px){.button{font-size:12px;padding-left:22px;gap:16px}.menu-toggle{background:rgb(242 242 242 / .2);backdrop-filter:blur(22px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.intro{display:none!important}.change-scene{height:auto;padding-block:40px}.change-pin{position:relative;height:auto;min-height:0}.change-content{padding-top:60px}.js .copy-stage{height:auto}.js .before-copy{display:none}.js .after-copy{position:relative;opacity:1;visibility:visible}.begin-toggle{display:none}.paper-world{opacity:1}.hero{background:var(--mint)}.world{position:absolute;height:max(960px,100svh)}.panel,.panel:nth-child(2){clip-path:inset(0)}.panel h3,.panel:nth-child(2) h3,.panel-action,.panel:nth-child(2) .panel-action{transform:none}.panel-action>span,.panel-action svg{opacity:1;transform:none}}
