:root{--dark:#2a2622;
  --bg:#f2f2f2; --paper:#fafafa; --ink:#191919; --sand:#dcd5c9; --muted:#7a7a7a; --lime:#c3ea4f;
  --line:rgba(25,25,25,.12);
  --display:"the-seasons","The Seasons","Cormorant Garamond",Georgia,serif;
  --script:"sloop-script-one","sloop-script-two","sloop-script-three","Sloop Script","Pinyon Script",cursive;
  --hand:"Emoray Signature Brush",cursive;
  --body:"Manrope",system-ui,sans-serif;
  --ease:cubic-bezier(.65,.05,.2,1);
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.15' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .1 0 0 0 0 .08 0 0 0 0 .07 0 0 0 2.4 -1.1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color-scheme:light;
}
*{box-sizing:border-box}
body{background:#dedede;color:var(--ink);font-family:var(--body);margin:0}
button{font:inherit;cursor:pointer}
:focus-visible{outline:1px solid var(--ink);outline-offset:4px}
img{display:block}
.site{position:relative;container-type:inline-size;width:min(var(--w,1440px),100%);margin:0 auto;background:var(--bg);overflow:clip;transition:width .4s var(--ease)}
.wrap{max-width:1320px;margin:0 auto;padding-inline:clamp(20px,4cqi,56px)}
.lbl{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500}
.lbl.m{color:var(--muted)}
p{margin:0;font-size:14px;line-height:1.9;font-weight:300;color:var(--muted);max-width:44ch}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance}
.st{font-family:var(--display);font-weight:400;letter-spacing:-.01em;line-height:1.22}
.st em{font-style:italic}
.st .hl{background:linear-gradient(transparent 58%,var(--lime) 58%,var(--lime) 92%,transparent 92%);padding-inline:.06em}
.scr{font-family:var(--script);font-weight:700;font-style:normal;letter-spacing:0}
a{color:inherit;text-decoration:none}
.tl{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;position:relative;padding-bottom:4px;display:inline-block}
.tl::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:right;transition:transform .5s var(--ease)}
.tl:hover::after{transform:scaleX(0)}
.grain{position:relative;isolation:isolate}
.grain::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background-image:var(--noise);background-size:240px;opacity:.5;mix-blend-mode:multiply}
.grain.soft::after{opacity:.28}
.tone img{filter:grayscale(.25) sepia(.16) contrast(.97)}
.head{position:relative;z-index:5}
.head .wrap{display:flex;justify-content:space-between;align-items:center;padding-block:26px}
.logo img{height:34px;width:auto}
.head nav{display:flex;gap:clamp(18px,3cqi,44px)}
.hr{display:flex;align-items:center;gap:clamp(24px,4cqi,56px)}
.tl[aria-current="page"]::after{transform:scaleX(1)}
.head nav .tl:not([aria-current])::after{transform:scaleX(0);transform-origin:left}
.head nav .tl:not([aria-current]):hover::after{transform:scaleX(1)}
.enq-btn{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;padding:13px 20px;transition:background .4s var(--ease),color .4s}
.enq-btn .dot{width:6px;height:6px;border-radius:50%;background:var(--lime)}
.enq-btn:hover{background:var(--lime);color:var(--ink)}
.enq-btn:hover .dot{background:var(--ink)}
.menu{display:none;background:none;border:0}
.land{padding-block:clamp(24px,3cqi,48px) clamp(100px,11cqi,160px)}
.lgrid{position:relative;display:grid;grid-template-columns:repeat(12,1fr);align-items:center}
.frame{grid-column:5/9;grid-row:1;aspect-ratio:2/3;position:relative;overflow:hidden;background:var(--sand)}
.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1.4s ease,transform 7s linear}
.frame img.on{opacity:1;transform:scale(1)}
.wm{grid-row:1;position:relative;z-index:3;font-family:var(--display);font-weight:400;font-size:clamp(64px,10.5cqi,156px);line-height:1;letter-spacing:-.02em;pointer-events:none}
.wm.a{grid-column:1/6;justify-self:end;margin-right:-.14em;margin-top:-14%}
.wm.b{grid-column:8/13;justify-self:start;margin-left:-.3em;margin-top:10%}
.lt{grid-column:2/5;grid-row:1;align-self:end;margin-bottom:18%;display:grid;gap:18px;justify-items:start;padding-right:20px}
.lt h1{font-weight:300;font-size:14px;line-height:1.8;color:var(--muted);max-width:28ch}
.rt{grid-column:9/12;grid-row:1;align-self:end;margin-bottom:8%;padding-left:clamp(16px,2cqi,30px);display:grid;gap:10px}
.count{font-size:10.5px;letter-spacing:.2em;font-variant-numeric:tabular-nums;color:var(--muted)}
.sig{font-family:var(--hand);font-size:34px;line-height:1;color:var(--ink)}
.intro{padding-block:0 clamp(110px,14cqi,200px)}
.intro .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.intro .lbl{grid-column:1/3;padding-top:12px}
.intro h2{grid-column:3/10;font-size:clamp(28px,3.1cqi,46px)}
.intro .side{grid-column:3/8;display:grid;gap:22px;margin-top:34px;justify-items:start}
.sx-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.cols-sec{position:relative;margin-inline:clamp(20px,4cqi,56px);height:clamp(560px,52cqi,800px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);cursor:none;color:var(--ink);transition:color .6s var(--ease)}
.cols{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);z-index:3}
.col{position:relative;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;padding:22px 22px 24px;color:inherit;transition:color .5s var(--ease),border-color .5s}
.col:first-child{border-left:0}
.col .bot{display:flex;justify-content:space-between;align-items:end;gap:10px}
.col .bot h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.4cqi,36px);line-height:1}
.col .num{font-size:10.5px;letter-spacing:.2em;opacity:.7}
.col .mimg{display:none}
.top1{max-width:90%;display:grid;gap:14px}
.top1 h2{font-size:clamp(20px,1.8cqi,26px)}
.fill{position:absolute;inset:0;z-index:1;overflow:hidden;clip-path:inset(0 0 0 66.666%);transition:clip-path 1s var(--ease)}
.fill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease,transform 1.6s var(--ease);transform:scale(1.06)}
.fill img.on{opacity:1;transform:scale(1)}
.fill::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(25,25,25,.2),rgba(25,25,25,0) 35%,rgba(25,25,25,.32));pointer-events:none}
.cols-sec .col.lit,.cols-sec.full,.cols-sec.full .col{color:var(--bg)}
.cols-sec.full .col{border-color:rgba(242,242,242,.25)}
.cursor{position:absolute;z-index:6;left:0;top:0;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;pointer-events:none;opacity:0;transform:scale(.6);transition:opacity .3s,transform .4s var(--ease);color:var(--bg);mix-blend-mode:difference}
.cols-sec:hover .cursor{opacity:1;transform:scale(1)}
@media (hover:none){.cols-sec{cursor:auto}
.cursor{display:none}}
.under{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;padding-block:18px 0}
.work-sec{padding-block:clamp(120px,14cqi,200px) clamp(110px,13cqi,180px)}
.wk{display:grid;grid-template-columns:4fr 8fr;gap:clamp(30px,5cqi,90px);align-items:start}
.wk-side{position:sticky;top:110px;display:grid;gap:26px;padding-top:6px}
.wk-side .top{display:flex;justify-content:space-between;align-items:baseline}
.titles{position:relative;height:clamp(96px,8cqi,130px);overflow:hidden}
.titles .tt{position:absolute;inset:0;display:grid;align-content:start;gap:10px;transform:translateY(105%);opacity:0;transition:transform .9s var(--ease),opacity .6s}
.titles .tt.on{transform:none;opacity:1}
.titles .tt.up{transform:translateY(-105%);opacity:0}
.titles h3{font-family:var(--display);font-weight:400;font-size:clamp(34px,3.6cqi,54px);line-height:1}
.titles h3 em{font-style:italic}
.prog{height:1px;background:var(--line);position:relative}
.prog i{position:absolute;left:0;top:0;bottom:0;background:var(--ink);width:0;transition:width .5s var(--ease)}
.wk-list{display:grid;gap:clamp(90px,11cqi,170px)}
.card{display:block;position:relative;width:var(--cw,100%);justify-self:var(--js,start)}
.card .ph{position:relative;overflow:hidden;aspect-ratio:var(--ar,3/2);clip-path:inset(0);transition:clip-path 1.3s var(--ease)}
.js-reveal .card:not(.in) .ph{clip-path:inset(14% 10% 14% 10%)}
.card .ph img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;transform:translate3d(0,var(--py,0px),0) scale(var(--sc,1.06));transition:transform .9s var(--ease)}
.card:hover .ph img{--sc:1.12}
.card .veil{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:linear-gradient(transparent,rgba(25,25,25,.45));color:var(--bg);transform:translateY(100%);transition:transform .6s var(--ease)}
.card:hover .veil,.card:focus-visible .veil{transform:none}
.card .cap{display:none}
.band{position:relative;min-height:clamp(520px,50cqi,720px);display:flex;align-items:center;color:var(--bg);background:var(--dark)}
.band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1) sepia(.3) contrast(1.12) brightness(.5)}
.band::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(30,26,22,.7),rgba(30,26,22,.25) 70%)}
.band .wrap{position:relative;z-index:3;width:100%;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.band .in{grid-column:2/9;display:grid;gap:26px;justify-items:start}
.band h2{font-size:clamp(30px,3.6cqi,54px);color:var(--bg)}
.band h2 .lime{color:var(--lime)}
.band .scr{color:var(--lime);font-size:1.18em;line-height:.8}
.band p{color:rgba(242,242,242,.78)}
.contact{padding-block:clamp(110px,13cqi,180px) clamp(70px,8cqi,110px)}
.contact .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.contact h2{grid-column:1/8;font-size:clamp(56px,8cqi,120px);line-height:.95}
.contact h2 .scr{font-size:1.1em}
.contact .r{grid-column:9/13;display:grid;gap:18px;justify-items:start}
.contact .mail{font-family:var(--display);font-style:italic;font-size:clamp(22px,2.2cqi,30px);user-select:all}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:22px 28px;border-top:1px solid var(--line);color:var(--muted)}
footer nav{display:flex;gap:24px;flex-wrap:wrap}
@media (prefers-reduced-motion:reduce){.fill,.fill img,.frame img,.card .ph,.card .ph img,.titles .tt{transition:none}}
@container (max-width:900px){.intro h2,.intro .side{grid-column:3/13}
.band .in{grid-column:1/12}
.contact h2,.contact .r{grid-column:1/13}}
@container (max-width:700px){.head nav{display:none}
.menu{display:block}
.enq-btn{padding:10px 14px}
.frame{grid-column:2/12}
.wm{font-size:clamp(60px,21cqi,120px)}
.wm.a{grid-column:1/13;justify-self:start;align-self:start;margin:-.42em 0 0}
.wm.b{grid-column:1/13;justify-self:end;align-self:end;margin:0 0 -.42em}
.lt{grid-row:2;grid-column:1/13;margin:70px 0 0;padding:0}
.rt{grid-row:3;grid-column:1/13;margin:24px 0 0;padding:0;display:flex;justify-content:space-between;align-items:center}
.intro .lbl,.intro h2,.intro .side{grid-column:1/13}
.cols-sec{height:auto;cursor:auto}
.cursor,.fill{display:none}
.cols{position:relative;grid-template-columns:1fr}
.col{border-left:0;border-top:1px solid var(--line);padding:0}
.col:first-child{border-top:0}
.cols-sec .col,.cols-sec .col.lit{color:var(--ink)}
.col .mimg{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.col .bot{padding:14px 2px 26px}
.top1{padding:6px 0 28px;max-width:none}
.col .empty{display:none}
.wk{grid-template-columns:1fr}
.wk-side{position:relative;top:auto}
.titles,.prog{display:none}
.wk-list .card{width:100%;justify-self:stretch}
.card .cap{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-top:12px}
.card .cap b{font-family:var(--display);font-weight:400;font-size:24px}
.wk-list{gap:56px}
.band .in{grid-column:1/13}}
.ss-hero{padding-block:clamp(40px,6cqi,90px) clamp(70px,8cqi,120px)}
.ss-hero .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.ss-hero .txt{grid-column:1/9;display:grid;gap:26px;justify-items:start}
.ss-hero h1{font-size:clamp(34px,4.2cqi,64px)}
.jump{grid-column:1/13;display:flex;gap:clamp(24px,4cqi,64px);flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px;margin-top:clamp(40px,5cqi,70px)}
.jump a{display:flex;gap:12px;align-items:baseline}
.jump .n{font-family:var(--display);font-style:italic;font-size:22px;color:var(--muted)}
.jump .t{font-family:var(--display);font-size:clamp(22px,2cqi,30px)}
.jump a:hover .t{font-style:italic}
.sess-b{padding-block:clamp(70px,9cqi,140px)}
.sess-b .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:start}
.sess-b .media{grid-column:1/7;position:sticky;top:96px}
.sess-b.flip .media{grid-column:7/13;grid-row:1}
.sess-b .frame2{position:relative;overflow:hidden;aspect-ratio:var(--ar,4/5);clip-path:inset(var(--clip,0%) 0 0 0)}
.sess-b .frame2 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(var(--z,1));transform-origin:50% 40%}
.sess-b .body{grid-column:8/13;display:grid;gap:26px;justify-items:start;padding-top:clamp(20px,6cqi,90px)}
.sess-b.flip .body{grid-column:1/6;grid-row:1}
.sess-b .num{font-family:var(--display);font-style:italic;font-size:clamp(40px,4cqi,60px);color:var(--muted);line-height:1}
.sess-b h2{font-size:clamp(40px,5cqi,76px);line-height:1}
.sess-b h2 em{font-style:italic}
.inc{list-style:none;margin:0;padding:0;width:100%;border-top:1px solid var(--line)}
.inc li{padding-block:14px;border-bottom:1px solid var(--line);font-size:14px;font-weight:300;color:var(--ink);display:flex;gap:14px;align-items:baseline;opacity:.25;transform:translateX(-10px);transition:opacity .7s ease,transform .7s var(--ease);transition-delay:calc(var(--k) * 90ms)}
.inc li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime);flex:none;transform:translateY(-2px)}
.sess-b.seen .inc li{opacity:1;transform:none}
.ctas{display:flex;gap:28px;flex-wrap:wrap;align-items:center}
.sub{font-family:var(--display);font-size:clamp(20px,1.8cqi,26px);line-height:1.35;color:var(--ink)!important;max-width:30ch!important}
.sub em{font-style:italic}
.divider{height:1px;background:var(--line);margin-inline:clamp(20px,4cqi,56px)}
.faq{padding-block:clamp(90px,11cqi,160px) clamp(40px,5cqi,70px)}
.faq .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.faq .lbl{grid-column:1/3;padding-top:24px}
.faq .list{grid-column:3/13;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding-block:24px;font-family:var(--display);font-size:clamp(22px,2.2cqi,32px)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{font-family:var(--body);font-size:20px;font-weight:200;transition:transform .4s var(--ease)}
.faq details[open] summary .pm{transform:rotate(45deg)}
.faq details p{padding-bottom:26px;max-width:60ch}
.prices{width:100%;display:grid;border-top:1px solid var(--ink)}
.prices .r{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding-block:14px;border-bottom:1px solid var(--line);align-items:baseline}
.prices .r b{font-family:var(--display);font-weight:400;font-size:20px}
.prices .r span{font-size:12.5px;color:var(--muted);grid-column:1/2}
.prices .r i{font-style:normal;font-family:var(--display);font-size:22px;grid-row:1/3;grid-column:2;align-self:center;font-variant-numeric:tabular-nums}
.small{font-size:12.5px!important}
.prices .r i{text-align:right}
.prices .r i small{display:block;font-family:var(--body);font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--muted);margin-bottom:2px}
.prints{padding-block:clamp(90px,11cqi,160px) 0}
.prints .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:start}
.prints .txt{grid-column:1/6;display:grid;gap:24px;justify-items:start;position:sticky;top:110px}
.prints h2{font-size:clamp(32px,3.6cqi,54px)}
.prints .lists{grid-column:7/13;display:grid;gap:50px}
.prints h3{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;margin-bottom:14px;font-family:var(--body)}
@container (max-width:700px){.prints .txt,.prints .lists{grid-column:1/13;position:relative;top:auto}}
.page-sessions .contact{padding-top:clamp(60px,7cqi,100px)}
@media (prefers-reduced-motion:reduce){.inc li{opacity:1;transform:none;transition:none}}
@container (max-width:900px){.ss-hero .txt{grid-column:1/13}
.faq .lbl,.faq .list{grid-column:1/13}}
@container (max-width:700px){.sess-b .media,.sess-b.flip .media{grid-column:1/13;grid-row:auto;position:relative;top:auto}
.sess-b .body,.sess-b.flip .body{grid-column:1/13;grid-row:auto;padding-top:10px}}
.dcl{position:relative;background:#1d1a17;color:var(--bg);overflow:hidden;margin-block:clamp(20px,3cqi,40px)}
.dcl>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:grayscale(1) contrast(1.1) brightness(.42);opacity:.55}
.dcl::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,21,18,.92),rgba(24,21,18,.45))}
.dcl .in{position:relative;z-index:2;max-width:1320px;margin:0 auto;padding:clamp(70px,9cqi,130px) clamp(20px,4cqi,56px);display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(24px,3cqi,40px) 20px}
.dcl .hd{grid-column:1/8;display:grid;gap:20px;justify-items:start}
.dcl .hd .lbl{color:var(--lime)}
.dcl h2{font-family:var(--display);font-weight:400;font-size:clamp(38px,5cqi,76px);line-height:1.02;letter-spacing:-.01em}
.dcl h2 em{font-style:italic;color:var(--lime)}
.dcl .hd p{color:rgba(242,242,242,.78);max-width:46ch}
.dcl .opts{grid-column:1/13;display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,2cqi,28px);margin-top:clamp(10px,2cqi,30px)}
.dcl .op{border:1px solid rgba(242,242,242,.28);padding:clamp(22px,2.6cqi,38px);display:grid;gap:14px;align-content:start;background:rgba(242,242,242,.04);backdrop-filter:blur(2px);transition:background .5s var(--ease),border-color .5s}
.dcl .op:hover{background:rgba(242,242,242,.09);border-color:var(--lime)}
.dcl .op h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.6cqi,38px);line-height:1.05}
.dcl .op .pr{font-family:var(--display);font-size:clamp(34px,3.4cqi,52px);line-height:1;color:var(--lime);font-variant-numeric:tabular-nums}
.dcl .op ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(242,242,242,.2)}
.dcl .op li{padding-block:11px;border-bottom:1px solid rgba(242,242,242,.2);font-size:13.5px;font-weight:300;display:flex;gap:12px;align-items:baseline}
.dcl .op li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--lime);flex:none;transform:translateY(-2px)}
.dcl .foot{grid-column:1/13;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;color:rgba(242,242,242,.78);font-size:13.5px;font-weight:300}
.dcl .enq-btn{background:var(--bg);color:var(--ink)}
.dcl .enq-btn:hover{background:var(--lime)}
@container (max-width:900px){.dcl .hd{grid-column:1/13}
.dcl .opts{grid-template-columns:1fr}}
.tl-sec{position:relative;margin-bottom:0}
.tl-pin{position:sticky;top:110px;height:auto;padding-block:10px 0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:clamp(50px,7vh,90px)}
.tl-head{width:100%;display:grid;gap:16px}
.tl-head h2{font-size:clamp(28px,3.1cqi,46px)}
.tl-track{position:relative;display:flex;gap:clamp(60px,9cqi,150px);padding-left:max(clamp(20px,4cqi,56px),calc((100cqi - 1320px)/2 + 56px));padding-right:30cqi;width:max-content;will-change:transform;padding-top:44px}
.tl-line{position:absolute;left:0;right:0;top:4px;height:1px;background:var(--line)}
.tl-line i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ink)}
.step{position:relative;width:clamp(280px,32cqi,460px);display:grid;gap:14px;align-content:start;opacity:.35;transform:translateY(16px);transition:opacity .7s ease,transform .7s var(--ease)}
.step.on{opacity:1;transform:none}
.step .dotm{position:absolute;top:-45px;left:0;width:9px;height:9px;border-radius:50%;background:var(--bg);border:1px solid var(--ink);transition:background .4s,border-color .4s}
.step.on .dotm{background:var(--lime);border-color:var(--lime)}
.step .n{font-family:var(--display);font-style:italic;font-size:clamp(48px,5.5cqi,88px);line-height:1;color:var(--muted)}
.step h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.4cqi,36px);line-height:1.1}
.step h3 em{font-style:italic}
.step.end{width:auto;align-self:center;opacity:1;transform:none}
.tl-sec.vert{height:auto!important}
.tl-sec.vert .tl-pin{position:relative;top:auto;height:auto;overflow:visible;gap:40px}
.tl-sec.vert .tl-track{flex-direction:column;width:auto;padding:0 clamp(20px,4cqi,56px) 0 calc(clamp(20px,4cqi,56px) + 26px);transform:none!important;gap:48px}
.tl-sec.vert .tl-line{left:clamp(20px,4cqi,56px);right:auto;top:0;bottom:0;width:1px;height:auto}
.tl-sec.vert .tl-line i{width:1px!important;height:100%}
.tl-sec.vert .step{width:auto;opacity:1;transform:none}
.tl-sec.vert .step .dotm{top:6px;left:-30px}
@media (prefers-reduced-motion:reduce){.step{opacity:1;transform:none;transition:none}}
.sp{position:relative;border-top:1px solid var(--line);margin-inline:clamp(20px,4cqi,56px)}
.sp-pin{position:sticky;top:60px;height:calc(100vh - 60px);min-height:560px;overflow:hidden}
.sp-lbl{position:absolute;right:0;text-align:right;top:clamp(20px,4vh,44px);z-index:4}
.sp-title{position:absolute;right:0;text-align:right;top:clamp(46px,9vh,96px);z-index:1;font-family:var(--display);font-weight:400;font-size:clamp(48px,7.4cqi,120px);line-height:.98;letter-spacing:-.02em;margin:0;pointer-events:none}
.sp-title em{font-style:italic}
.sp-3d{position:absolute;inset:0;perspective:1500px;perspective-origin:50% 42%;z-index:2}
.sp-title{will-change:transform}
.sp-card{position:absolute;left:40%;top:56%;transform-origin:0 100%;width:clamp(230px,21cqi,300px);padding:0 0 22px;background:none;border:0;will-change:transform,opacity,filter;backface-visibility:hidden;text-shadow:0 0 14px var(--bg),0 0 5px var(--bg),0 0 2px var(--bg)}
.sp-card.on{}
.sp-thl{position:absolute;inset:0;z-index:0;pointer-events:none}
.sp-th{position:absolute;left:40%;top:56%;transform-origin:0 0;object-fit:cover;background:var(--sand);box-shadow:0 22px 40px -22px rgba(25,25,25,.45);pointer-events:none;will-change:transform,opacity,filter;transition:opacity .3s;opacity:0;backface-visibility:hidden}
.sp-card .n{font-family:var(--display);font-style:italic;font-size:clamp(38px,3.8cqi,56px);line-height:1;color:var(--muted);display:block;margin-bottom:10px}
.sp-card.on .n{color:var(--ink)}
.sp-card .tm{position:absolute;left:-5px;bottom:-5px;width:10px;height:10px;border-radius:50%;background:var(--bg);border:1px solid var(--ink);transition:background .4s,border-color .4s,box-shadow .4s}
.sp-card.on .tm{background:var(--lime);border-color:var(--lime);box-shadow:0 0 0 6px rgba(195,234,79,.3)}
.sp-card h3{font-family:var(--display);font-weight:400;font-size:clamp(22px,2cqi,30px);line-height:1.1;margin-bottom:10px}
.sp-card h3 em{font-style:italic}
.sp-card p{font-size:13.5px;line-height:1.7;max-width:none;color:#6a6a6a}
.sp-card .bar2{height:2px;width:34px;background:var(--lime);margin-bottom:14px}
.sp-orbit{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}
.sp-orbit path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.sp-orbit .l0{stroke:rgba(25,25,25,.2);stroke-width:1.2}
.sp-orbit .l1{stroke:rgba(25,25,25,.15);stroke-width:1.1;filter:blur(1px)}
.sp-orbit .l2{stroke:rgba(25,25,25,.1);stroke-width:1;filter:blur(2.6px)}
.sp-orbit .l3{stroke:rgba(25,25,25,.06);stroke-width:.9;filter:blur(5px)}
.sp-dotx{position:absolute;left:0;top:0;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;border-radius:50%;background:var(--lime);border:1px solid var(--ink);z-index:3;box-shadow:0 0 0 7px rgba(195,234,79,.3)}
.sp-side{position:absolute;right:0;top:clamp(22px,5vh,52px);z-index:4;max-width:26ch;display:grid;gap:18px;justify-items:start}
.sp-side p{font-size:13.5px}
.sp-cta{position:absolute;left:0;bottom:clamp(18px,4vh,40px);z-index:4}
.sp-count{position:absolute;right:0;bottom:clamp(18px,4vh,40px);z-index:4;font-variant-numeric:tabular-nums;display:flex;gap:14px;align-items:center}
.sp-count i{display:block;width:clamp(60px,8cqi,120px);height:1px;background:var(--line);position:relative}
.sp-count i b{position:absolute;left:0;top:-1px;height:3px;background:var(--ink);width:0}
.sp-stage{position:relative;max-width:1320px;margin:0 auto;height:100%}
.sp.vert{height:auto!important}
.sp.vert .sp-pin{position:relative;top:auto;height:auto;min-height:0;overflow:visible;padding-block:clamp(50px,8cqi,90px)}
.sp.vert .sp-stage{height:auto;display:grid;gap:30px}
.sp.vert .sp-th{display:none}
.sp.vert .sp-orbit,.sp.vert .sp-dotx{display:none}
.sp.vert .sp-card .tm{display:none}
.sp.vert .sp-side,.sp.vert .sp-cta{position:relative;left:auto;right:auto;top:auto;bottom:auto}
.sp.vert .sp-lbl,.sp.vert .sp-title,.sp.vert .sp-count{position:relative;left:auto;top:auto;bottom:auto;right:auto}
.sp.vert .sp-count{display:none}
.sp.vert .sp-title{font-size:clamp(40px,12cqi,64px);text-align:left}
.sp.vert .sp-lbl{text-align:left}
.sp.vert .sp-card{padding-left:0}
.sp.vert .sp-3d{position:relative;inset:auto;perspective:none;display:grid;gap:14px}
.sp.vert .sp-card{position:relative;left:auto;top:auto;width:auto;transform:none!important;opacity:1!important}
@media (prefers-reduced-motion:reduce){.sp-card{transition:none}}
.pfs{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2cqi,28px);align-items:start;width:100%}
.pf{display:grid;gap:18px}
.pfs .pf .ph{aspect-ratio:4/5}
.pf .ph{position:relative;overflow:hidden;background:var(--sand)}
.pf .ph img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;transform:scale(var(--sc,1.04));transition:transform .9s var(--ease)}
.pf:hover .ph img{--sc:1.1}
.pf .cap{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:1px solid var(--line);padding-top:14px}
.pf h3{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4cqi,36px);line-height:1}
.pf h3 em{font-style:italic}
.pf:hover h3{font-style:italic}
.vc{position:absolute;left:0;top:0;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:10px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;pointer-events:none;z-index:3;transform:translate3d(var(--x,0),var(--y,0),0) scale(var(--s,0));transition:transform .35s var(--ease)}
.vc i{width:5px;height:5px;border-radius:50%;background:var(--lime);display:block;margin:0 auto 6px}
@media (hover:none){.vc{display:none}}
@media (prefers-reduced-motion:reduce){.pf .ph img{transition:none}}
@container (max-width:900px){.pfs{grid-template-columns:1fr}}
.dp-hero{padding-block:clamp(40px,6cqi,90px) clamp(40px,5cqi,70px)}
.dp-hero .wrap{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:end}
.dp-hero .txt{grid-column:1/9;display:grid;gap:26px;justify-items:start}
.dp-hero h1{font-size:clamp(34px,4.2cqi,64px)}
.crumb{display:flex;gap:10px;align-items:center;color:var(--muted)}
.crumb a:hover{color:var(--ink)}
.dp-img{padding-bottom:clamp(60px,8cqi,110px)}
.dp-img .frm{position:relative;overflow:hidden;aspect-ratio:21/9;background:var(--sand)}
.dp-img .frm img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dp-sec{padding-block:clamp(60px,8cqi,120px);border-top:1px solid var(--line);margin-inline:clamp(20px,4cqi,56px)}
.dp-sec>.in{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.dp-sec .side{grid-column:1/4;display:grid;gap:18px;align-content:start;justify-items:start}
.dp-sec .side h2{font-size:clamp(28px,2.8cqi,42px)}
.dp-sec .main{grid-column:5/13;display:grid;gap:34px;justify-items:start}
.dp-sec .main.full{grid-column:1/13}
.pk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2cqi,28px);width:100%}
.pk{background:var(--paper);padding:clamp(22px,2.4cqi,34px);display:grid;gap:18px;align-content:start;position:relative;border:1px solid var(--line)}
.pk.star{border-color:var(--ink)}
.pk .tag{position:absolute;top:0;right:0;background:var(--lime);color:var(--ink);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;padding:6px 10px}
.pk h3{font-family:var(--display);font-size:clamp(26px,2.4cqi,36px);line-height:1.05}
.pk .pr{font-family:var(--display);font-size:clamp(30px,3cqi,44px);font-variant-numeric:tabular-nums;line-height:1}
.pk .pr small{display:block;font-family:var(--body);font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--muted);margin-bottom:8px}
.pk .hrs{font-size:12.5px;color:var(--muted);font-weight:300}
.pk ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.pk li{padding-block:11px;border-bottom:1px solid var(--line);font-size:13.5px;font-weight:300;display:flex;gap:12px;align-items:baseline}
.pk li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--lime);flex:none;transform:translateY(-2px)}
.pk li.no{color:var(--muted)}
.pk li.no::before{background:var(--line)}
.pk .enq-btn{justify-self:start}
.steps{list-style:none;margin:0;padding:0;width:100%;border-top:1px solid var(--ink);counter-reset:s}
.steps li{display:grid;grid-template-columns:60px 1fr;gap:6px 16px;padding-block:20px;border-bottom:1px solid var(--line);counter-increment:s}
.steps li::before{content:counter(s,decimal-leading-zero);font-family:var(--display);font-style:italic;font-size:26px;color:var(--muted);grid-row:1/3;line-height:1}
.steps b{font-family:var(--display);font-weight:400;font-size:clamp(20px,1.8cqi,26px)}
.steps span{font-size:13.5px;font-weight:300;color:var(--muted);line-height:1.7;max-width:56ch}
.rules{list-style:none;margin:0;padding:0;width:100%;border-top:1px solid var(--line)}
.rules li{padding-block:14px;border-bottom:1px solid var(--line);font-size:14px;font-weight:300;color:var(--ink);display:flex;gap:14px;align-items:baseline}
.rules li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lime);flex:none;transform:translateY(-2px)}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.4cqi,20px);width:100%}
.strip .s{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--sand)}
.strip .s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lg{background:var(--ink);color:var(--bg);margin-top:clamp(40px,6cqi,90px)}
.lg{position:relative;isolation:isolate;overflow:hidden}
.lg-bg{position:absolute;inset:0;z-index:-1}
.lg-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.lg-bg::after{content:"";position:absolute;inset:0;background:rgba(25,25,25,.87)}
.lg-in{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,5cqi,80px);align-items:center;padding:clamp(28px,5cqi,80px) clamp(20px,4cqi,56px)}
.lg-ph{position:sticky;top:90px;align-self:start;padding-bottom:clamp(30px,6cqi,90px)}
.lg-ph .a{display:block;width:92%;aspect-ratio:4/3.3;object-fit:cover;object-position:50% 40%}
.lg-ph .b{position:absolute;right:0;bottom:0;width:42%;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%;border:clamp(6px,1cqi,12px) solid var(--ink)}
.lg-ph .cap{position:absolute;left:0;bottom:clamp(6px,1.4cqi,20px);color:rgba(242,242,242,.6);max-width:36%}
.lg-tx{display:grid;gap:clamp(12px,1.5cqi,20px);justify-items:start}
.lg .big{font-family:var(--display);font-style:italic;font-weight:400;font-size:clamp(90px,13cqi,190px);line-height:.8;color:var(--lime);letter-spacing:-.02em}
.lg .big sup{font-size:.5em;vertical-align:top;position:relative;top:.08em}
.lg h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.8cqi,40px);line-height:1.15}
.lg .why p{grid-column:1/3}
.lg .enq-btn{background:var(--lime);color:var(--ink)}
.lg .enq-btn .dot{background:var(--ink)}
.lg h3 em{font-style:italic;color:var(--lime)}
.lg p{color:rgba(242,242,242,.78);max-width:56ch}
.lg .why{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2cqi,28px);width:100%;margin:clamp(20px,3cqi,44px) 0 6px;padding:0}
.lg .why li{display:grid;align-content:start;row-gap:6px;margin:0;grid-template-columns:36px 1fr;column-gap:14px;padding:clamp(20px,2.4cqi,34px);border:1px solid rgba(242,242,242,.28);background:rgba(255,255,255,.035)}
.lg .why b{grid-row:1/3;font-family:var(--display);font-style:italic;font-weight:400;color:var(--lime);font-size:18px}
.lg .why h4{font-family:var(--display);font-weight:400;font-size:20px;margin:0}
.lg .why h4 em{font-style:italic}
.lg .why p{font-size:14.5px;margin-top:0}
.lg .chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 6px;padding:0}
.lg .chips li{font-size:12px;letter-spacing:.02em;border:1px solid rgba(242,242,242,.3);border-radius:999px;padding:7px 14px;color:rgba(242,242,242,.85)}
@container (max-width:900px){.lg-in{grid-template-columns:1fr}
.lg .why{grid-template-columns:1fr}
.lg-ph{max-width:620px;position:relative;top:0}}
.callout{background:var(--ink);color:var(--bg);padding:clamp(26px,3.4cqi,52px);display:grid;gap:18px;justify-items:start;width:100%}
.callout h3{font-family:var(--display);font-weight:400;font-size:clamp(26px,2.8cqi,40px);line-height:1.15}
.callout h3 em{font-style:italic;color:var(--lime)}
.callout p{color:rgba(242,242,242,.78);max-width:58ch}
.callout .rules{border-color:rgba(242,242,242,.2)}
.callout .rules li{color:var(--bg);border-color:rgba(242,242,242,.2)}
.tp{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;align-items:center;padding-block:clamp(40px,5cqi,70px);border-top:1px solid var(--line);margin-inline:clamp(20px,4cqi,56px);scroll-margin-top:20px}
.tp>.in{display:contents}
.tp .ph{grid-column:1/6;aspect-ratio:4/5;position:relative;overflow:hidden;background:var(--sand)}
.tp.flip .ph{grid-column:8/13;grid-row:1}
.tp .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tp .tx{grid-column:7/13;display:grid;gap:20px;justify-items:start}
.tp.flip .tx{grid-column:1/7;grid-row:1}
.tp h2{font-size:clamp(34px,4cqi,60px);line-height:1}
.tp .num{font-family:var(--display);font-style:italic;font-size:26px;color:var(--muted)}
.dp-sec .main .prices{max-width:none}
.small{font-size:12.5px!important}
@container (max-width:900px){.dp-hero .txt{grid-column:1/13}
.dp-sec .side,.dp-sec .main{grid-column:1/13}
.pk-grid{grid-template-columns:1fr}
.tp .ph,.tp.flip .ph{grid-column:1/13;grid-row:auto;aspect-ratio:4/3}
.tp .tx,.tp.flip .tx{grid-column:1/13;grid-row:auto}
.dp-img .frm{aspect-ratio:4/3}
.strip{grid-template-columns:1fr 1fr}
.strip .s:last-child{display:none}}
