@font-face{font-family:Anuphan Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/anuphan-thai-wght-normal.M2SYPT7d.woff2)format("woff2-variations");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Anuphan Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/anuphan-vietnamese-wght-normal.BNxdSFSW.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anuphan Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/anuphan-latin-ext-wght-normal.CLfxpfVx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anuphan Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/anuphan-latin-wght-normal.DvQ8j10x.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--pine:#12382c;--pine-2:#1d4e3e;--ink:#10261e;--cream:#f7f0e1;--paper:#fffaf0;--marigold:#f7b733;--coral:#f2643d;--lilac:#cbbcf2;--sage:#b7cfa4;--sky:#aed4e6;--blush:#f6c7b6;--line:#10261e29;--error:#b3261e;--font-th:"Anuphan Variable", "Leelawadee UI", Tahoma, sans-serif;--font-display:"Bricolage Grotesque Variable", "Anuphan Variable", "Leelawadee UI", sans-serif;--gutter:clamp(16px, 4vw, 56px);--section:clamp(72px, 9vw, 136px);--radius:28px;--header-h:92px;--ease-settle:cubic-bezier(.22, .9, .3, 1);--ease-pop:cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h);-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-th);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;font-weight:500;line-height:1.6;overflow-x:clip}img,svg{max-width:100%;display:block}img{height:auto}a{color:inherit}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0;padding:0}ul,ol{list-style:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--coral);outline-offset:3px;border-radius:6px}html.js:not(.ready) [data-hero-copy],html.js:not(.ready) [data-collage]>*{visibility:hidden}.thw{white-space:nowrap}.container{width:min(1440px,100%);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section);position:relative}.skip{z-index:100;background:var(--pine);color:#fff;border-radius:8px;padding:10px 18px;transition:top .2s;position:fixed;top:-80px;left:12px}.skip:focus{top:12px}.h2{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(42px,6.4vw,104px);font-weight:700;line-height:1.08}.btn{text-align:center;min-height:56px;transition:background-color .2s, color .2s, border-color .2s, transform .25s var(--ease-pop);border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:12px 32px;font-size:17px;font-weight:700;line-height:1.25;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-3px)rotate(-1deg)}.btn:active{transition-duration:80ms;transform:scale(.96)}.btn--primary{background:var(--marigold);color:var(--ink)}.btn--primary:hover{background:#ffc94f}.btn--ghost{background:0 0;border-color:currentColor}.btn--quiet{border-color:var(--ink);background:var(--paper);color:var(--ink)}.btn--sm{min-height:44px;padding:8px 22px;font-size:15px}.link{text-underline-offset:5px;font-weight:700}.badge{z-index:3;background:var(--paper);color:var(--ink);pointer-events:none;border-radius:999px;padding:3px 12px;font-size:13px;position:absolute;bottom:12px;left:12px}.header{z-index:50;pointer-events:none;padding-inline:12px;position:fixed;inset:12px 0 auto}.header__bar{pointer-events:auto;background:var(--paper);border-radius:999px;justify-content:space-between;align-items:center;gap:20px;width:min(1400px,100%);height:68px;margin-inline:auto;padding:6px 10px 6px 8px;display:flex;position:relative;box-shadow:0 14px 34px -20px #10261e99}.logo{font-family:var(--font-display);flex:none;align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.logo img{width:88px;max-width:none;height:88px;transition:transform .5s var(--ease-pop);border-radius:50%;box-shadow:0 8px 18px -8px #10261e8c}.logo:hover img{transform:rotate(-6deg)scale(1.04)}@media (width<=420px){.header__bar{gap:8px}.logo img{width:78px;height:78px}.lang a{min-width:36px}.menu-btn{padding-inline:12px}}@media (width<=350px){.header__bar{gap:6px}.logo img{width:70px;height:70px}.lang a{min-width:32px}.menu-btn{padding-inline:10px}}.nav{align-items:center;gap:4px;display:flex}.nav a{border-radius:999px;padding:8px 16px;font-size:16px;font-weight:700;text-decoration:none;transition:background-color .2s}.nav a:hover{background:var(--marigold)}.header__end{flex:none;align-items:center;gap:8px;display:flex}.header__cta{background:var(--pine);color:var(--paper)}.header__cta:hover{background:var(--pine-2)}.lang{background:var(--cream);border-radius:999px;padding:3px;display:flex}.lang a{border-radius:999px;justify-content:center;align-items:center;min-width:40px;min-height:38px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.lang a[aria-current=true]{background:var(--ink);color:var(--paper)}.menu-btn{background:var(--marigold);border:0;border-radius:999px;min-height:44px;padding:6px 16px;font-size:15px;font-weight:700;display:none}@media (width<=1120px){.menu-btn{align-items:center;display:inline-flex}.header__cta{display:none}.nav{background:var(--paper);opacity:0;visibility:hidden;transform-origin:100% 0;width:min(300px,100vw - 24px);transition:opacity .18s, transform .22s var(--ease-settle), visibility .18s;border-radius:24px;flex-direction:column;align-items:stretch;gap:0;padding:10px;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-8px)scale(.98);box-shadow:0 20px 40px -20px #10261e99}.nav.is-open{opacity:1;visibility:visible;transform:none}}.hero{background:var(--pine);min-height:100svh;color:var(--cream);grid-template-rows:1fr auto;display:grid;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle at 76% 118%,#0000 0 70px,#f7f0e117 70px 72px);position:absolute;inset:0}.hero__grid{padding-top:calc(var(--header-h) + 8px);grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:clamp(20px,3vw,48px);padding-bottom:28px;display:grid;position:relative}.hero__tag{background:var(--coral);color:var(--ink);border-radius:999px;margin-bottom:16px;padding:6px 18px;font-size:clamp(15px,1.3vw,19px);font-weight:700;display:inline-block;rotate:-3deg}[data-hero-copy]{container-type:inline-size}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(34px,min(15.5cqi,11.4vh),112px);font-weight:800;line-height:1.17}.hero h1>span{white-space:nowrap;width:fit-content;display:block}.hero h1>span:last-child{background:var(--marigold);color:var(--ink);transform-origin:0;border-radius:.26em;margin-top:.12em;padding:0 .28em .04em;rotate:-2deg}:lang(en) .hero h1{font-size:clamp(30px,min(11.2cqi,11vh),96px)}.hero__cta{flex-wrap:wrap;gap:12px;margin-top:clamp(22px,3.4vh,38px);display:flex}.collage{height:min(78vh,760px);position:relative}.collage>*{position:absolute}.c-main{border:7px solid var(--cream);border-radius:999px 999px 32px 32px;width:62%;height:100%;top:0;left:14%;overflow:hidden}.c-main img{object-fit:cover;object-position:50% 62%;width:100%;max-width:none;height:112%}.c-side{aspect-ratio:1;border:7px solid var(--cream);border-radius:var(--radius);z-index:2;width:38%;top:6%;right:0;overflow:hidden;rotate:6deg}.c-side img{object-fit:cover;object-position:44% 50%;width:100%;height:100%}.c-tile{aspect-ratio:4/3;border-radius:var(--radius);background:var(--marigold);z-index:3;place-items:center;width:50%;display:grid;bottom:7%;left:0;rotate:-6deg;box-shadow:0 24px 40px -24px #000000b3}.c-tile img{width:96%}.spin{aspect-ratio:1;background:var(--coral);width:clamp(104px,11.5vw,168px);color:var(--ink);z-index:4;transition:scale .3s var(--ease-pop);border-radius:50%;place-items:center;text-decoration:none;display:grid;bottom:4%;right:3%}.spin:hover{scale:1.08}.spin svg{width:100%;height:100%;animation:16s linear infinite spin;position:absolute;inset:0}.spin text{font-family:var(--font-display);fill:currentColor;font-size:11.5px;font-weight:800}.spin b{font-size:clamp(26px,3vw,42px);line-height:1}@keyframes spin{to{transform:rotate(360deg)}}.ticker{background:var(--coral);color:var(--ink);padding-block:12px;position:relative;overflow:hidden}.ticker__row{width:max-content;animation:34s linear infinite ticker;display:flex}.ticker span{font-family:var(--font-display);white-space:nowrap;padding-right:.7em;font-size:clamp(22px,2.6vw,38px);font-weight:800;line-height:1.1}.ticker i{padding-right:.7em;font-style:normal}@keyframes ticker{to{transform:translate(-50%)}}@media (width<=900px),(aspect-ratio<=1){.hero{min-height:0}.hero__grid{grid-template-columns:1fr}.collage{height:clamp(360px,100vw,720px);margin-top:8px}}.collection__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 40px;margin-bottom:clamp(26px,3.4vw,48px);display:flex}.filter{background:var(--cream);border-radius:999px;gap:2px;padding:5px;display:inline-flex;position:relative}.filter__thumb{background:var(--ink);width:0;height:0;transition:transform .35s var(--ease-settle), width .35s var(--ease-settle), height .35s var(--ease-settle);pointer-events:none;border-radius:999px;position:absolute;top:0;left:0}.filter__btn{z-index:1;background:0 0;border:0;border-radius:999px;min-height:46px;padding:6px 22px;font-size:16px;font-weight:700;transition:color .2s;position:relative}.filter__btn[aria-pressed=true]{color:var(--paper)}html:not(.js) .filter{display:none}.gallery{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(360px,33vw,500px);gap:clamp(10px,1.2vw,18px);display:grid}.item{border-radius:var(--radius);background:var(--tone);isolation:isolate;min-width:0;transition:transform .4s var(--ease-settle);grid-column:span 4;position:relative;overflow:hidden}.item[hidden]{display:none}.item--4{grid-column:span 4}.item--5{grid-column:span 5}.item--7{grid-column:span 7}.item--12{grid-column:span 12}.tone-marigold{--tone:var(--marigold)}.tone-sage{--tone:var(--sage)}.tone-blush{--tone:var(--blush)}.tone-sky{--tone:var(--sky)}.tone-lilac{--tone:var(--lilac)}.tone-coral{--tone:#f58a66}.item:hover{transform:translateY(-6px)}.item:before{content:"";aspect-ratio:1;width:88%;transition:scale .6s var(--ease-settle);z-index:-1;background:#ffffff57;border-radius:50%;position:absolute;top:66%;left:50%;translate:-50% -50%}.item:hover:before{scale:1.14}.item__stage{position:absolute;inset:22% 3% 6%}.item__shot{object-fit:contain;width:100%;height:100%;transition:transform .6s var(--ease-settle)}.item:hover .item__shot{transform:scale(1.07)rotate(-1.5deg)}.item__room{object-fit:cover;opacity:0;z-index:0;width:100%;height:100%;transition:opacity .35s;position:absolute;inset:0}.item__name{z-index:2;font-family:var(--font-display);letter-spacing:-.02em;padding:clamp(16px,1.7vw,26px) clamp(92px,9vw,130px) 0 clamp(18px,1.9vw,28px);font-size:clamp(26px,2.5vw,40px);font-weight:800;line-height:1.06;transition:color .3s;position:relative}.item--7 .item__name{font-size:clamp(32px,3.6vw,58px)}.item__link{text-decoration:none}.item__link:after{content:"";z-index:1;position:absolute;inset:0}.item__tag{z-index:2;background:var(--ink);color:var(--paper);white-space:nowrap;transition:rotate .4s var(--ease-pop);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:700;position:absolute;top:clamp(14px,1.4vw,22px);right:clamp(12px,1.2vw,18px);rotate:4deg}.item:hover .item__tag{rotate:-5deg}.item__foot{z-index:3;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.item__ask{pointer-events:auto;background:var(--paper);border-radius:999px;align-items:center;min-height:44px;padding:6px 18px;font-size:15px;font-weight:700;text-decoration:none;transition:background-color .2s;display:inline-flex}.item__ask:hover{background:var(--ink);color:var(--paper)}.item__go{background:var(--ink);width:46px;height:46px;color:var(--paper);transition:transform .35s var(--ease-pop);border-radius:50%;place-items:center;display:grid}.item:hover .item__go{transform:rotate(45deg)scale(1.08)}@media (hover:hover){.item:has(.item__room):hover .item__room{opacity:1}.item:has(.item__room):hover .item__shot{opacity:0}.item:has(.item__room):hover .item__name{color:#fff;text-shadow:0 2px 18px #0000008c}}@media (width<=760px){#equipment .gallery{scroll-snap-type:x mandatory;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);scrollbar-width:none;grid-template-columns:none;gap:12px;display:flex;overflow-x:auto}#equipment .gallery::-webkit-scrollbar{display:none}#equipment .item{scroll-snap-align:start;flex:0 0 80vw;height:430px}.item__name,.item--7 .item__name{font-size:30px}}.promise{background:var(--marigold);overflow:hidden}.promise:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle at 8% 112%,#0000 0 58px,#10261e12 58px 60px);position:absolute;inset:0}.promise__grid{grid-template:"photos head"1fr"photos points"/minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,2.4vw,36px) clamp(32px,5vw,80px);display:grid;position:relative}.promise__head{grid-area:head;align-self:center;container-type:inline-size}.promise h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(46px,min(19cqi,14.5vh),150px);font-weight:800;line-height:1.12}.promise h2>span{white-space:nowrap;display:block}.promise h2>.is-small{font-size:.5em;line-height:1.3}.promise h2>.is-big+.is-small{margin-top:.3em}:lang(en) .promise h2{font-size:clamp(32px,min(11cqi,13vh),104px);line-height:1.08}:lang(en) .promise h2>.is-small{font-size:.58em}.promise__photos{grid-area:photos;min-height:clamp(520px,44vw,660px);position:relative}.promise__photos:before{content:"";aspect-ratio:1;background:var(--coral);border-radius:50%;width:42%;position:absolute;top:3%;right:2%}.promise__main{border:7px solid var(--paper);border-radius:999px 999px 32px 32px;width:78%;position:absolute;top:0;bottom:12%;left:0;overflow:hidden}.promise__main img{object-fit:cover;object-position:30% 50%;width:100%;height:100%}.promise__side{aspect-ratio:4/5;border:7px solid var(--paper);border-radius:32px;width:48%;position:absolute;bottom:0;right:0;overflow:hidden;rotate:3deg}.promise__side img{object-fit:cover;object-position:55% 55%;width:100%;height:100%}.promise__points{grid-area:points;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.point{border-radius:24px;flex-direction:column;justify-content:space-between;gap:18px;min-height:clamp(150px,12vw,184px);padding:clamp(16px,1.5vw,22px);font-size:clamp(17px,1.4vw,21px);font-weight:700;line-height:1.28;display:flex}.point svg{fill:currentColor;width:clamp(32px,2.8vw,42px);height:clamp(32px,2.8vw,42px)}.point--coral{background:var(--coral);color:var(--ink)}.point--ink{background:var(--ink);color:var(--paper)}.point--lilac{background:var(--lilac);color:var(--ink)}.point--paper{background:var(--paper);color:var(--ink)}.point--ink svg{fill:var(--marigold)}@media (width<=1100px){.promise__points{grid-template-columns:repeat(2,minmax(0,1fr))}.point{min-height:132px}}@media (width<=860px){.promise__grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"head""photos""points"}.promise h2{font-size:min(19cqi,120px)}:lang(en) .promise h2{font-size:min(11cqi,92px)}.promise__photos{aspect-ratio:1/1.08;width:100%;max-width:560px;min-height:0;margin-inline:auto}}.showcase{background:var(--pine);color:var(--cream);padding-bottom:clamp(56px,7vw,104px);overflow:hidden}.showcase:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle at 90% -8%,#0000 0 70px,#f7f0e112 70px 72px);position:absolute;inset:0}.showcase__head{margin-bottom:clamp(26px,3.6vw,52px);position:relative}.rails{gap:clamp(10px,1.2vw,18px);display:grid;position:relative}.rail{will-change:transform;gap:clamp(10px,1.2vw,18px);width:max-content;display:flex}.rail figure{background:var(--pine-2);border-radius:var(--radius);flex:none;height:clamp(230px,27vw,410px);overflow:hidden}.rail figure:nth-child(3n+1){border-radius:999px 999px var(--radius) var(--radius)}.rail img{width:auto;max-width:none;height:100%;transition:transform .7s var(--ease-settle)}.rail figure:hover img{transform:scale(1.05)}.anatomy-section{background:var(--cream);overflow:hidden}.anatomy{aspect-ratio:8/5;margin-top:clamp(14px,2vw,28px);position:relative}.anatomy__stage{background:var(--sage);border-radius:40px;position:absolute;inset:0;overflow:hidden}.anatomy__stage:before{content:"";background:repeating-radial-gradient(circle at 50% 56%,#0000 0 56px,#ffffff38 56px 58px);position:absolute;inset:0}.anatomy__stage img{object-fit:contain;width:100%;height:100%;position:relative}.anatomy__lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.anatomy__lines path{fill:none;stroke:var(--ink);stroke-width:.2px}.anatomy__lines circle{fill:var(--coral);stroke:var(--ink);stroke-width:.15px}.lens{text-align:center;width:21%;position:absolute;translate:-50% -50%}.lens__img{aspect-ratio:1;border:6px solid var(--paper);transition:transform .4s var(--ease-pop);background:#fff;border-radius:50%;display:block;overflow:hidden;box-shadow:0 18px 34px -20px #10261eb3}.lens:hover .lens__img{transform:scale(1.08)rotate(-3deg)}.lens__img img{object-fit:cover;width:100%;height:100%}.lens figcaption{background:var(--ink);color:var(--paper);white-space:nowrap;border-radius:999px;margin-top:-16px;padding:4px 14px;font-size:clamp(13px,1.15vw,17px);font-weight:700;line-height:1.3;display:inline-block;position:relative}@media (width<=760px){.anatomy{aspect-ratio:auto;grid-template-columns:1fr 1fr;gap:18px 12px;display:grid}.anatomy__stage{aspect-ratio:8/5;border-radius:var(--radius);grid-column:1/-1;position:relative}.anatomy__lines{display:none}.lens{width:auto;position:static;translate:none}.lens figcaption{white-space:normal}}.solutions{background:var(--lilac);overflow:hidden}.solutions .h2{font-size:clamp(42px,6.4vw,88px)}.solutions__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.services{margin-block:clamp(24px,3vw,40px)}.service{border-top:2px solid var(--ink);transition:padding-left .3s var(--ease-settle);align-items:baseline;gap:16px;padding-block:clamp(10px,1.2vw,18px);display:flex}.service:last-child{border-bottom:2px solid var(--ink)}.service:hover{padding-left:14px}.service__n{font-family:var(--font-display);font-size:clamp(15px,1.3vw,19px);font-weight:800}.service h3{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(25px,3.3vw,52px);font-weight:800;line-height:1.16}.solutions .btn--primary{background:var(--ink);color:var(--paper)}.plan{position:relative}.plan__arch{aspect-ratio:4/5;border-radius:999px 999px var(--radius) var(--radius);border:7px solid var(--paper);overflow:hidden}.plan__arch img{object-fit:cover;width:100%;height:100%}.plan__sticker{background:var(--marigold);white-space:nowrap;border-radius:999px;padding:10px 22px;font-size:clamp(16px,1.5vw,22px);font-weight:700;position:absolute;bottom:8%;left:-6%;rotate:-6deg}@media (width<=900px){.solutions__grid{grid-template-columns:1fr}.plan{max-width:440px;margin-inline:auto}.plan__sticker{left:0}}.about{background:var(--coral);text-align:center;overflow:hidden}.about:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle at 50% 130%,#0000 0 64px,#10261e14 64px 66px);position:absolute;inset:0}.about img{aspect-ratio:1;width:clamp(240px,min(30vw,50vh),420px);height:auto;box-shadow:0 0 0 clamp(8px, .8vw, 12px) var(--paper), 0 30px 50px -22px #10261ea6;border-radius:50%;margin:0 auto clamp(30px,3.4vw,52px);position:relative;rotate:-4deg}@media (width<=640px){.about img{width:min(70vw,300px)}}.about .h2{max-width:17em;margin-inline:auto;font-size:clamp(34px,5vw,80px);position:relative}.about .h2>span{display:inline-block}.faq__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;gap:28px clamp(40px,6vw,96px);display:grid}.qa{background:var(--cream);border-radius:24px;margin-bottom:10px;transition:background-color .25s}.qa[open]{background:var(--marigold)}.qa summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:16px 22px;font-size:clamp(18px,1.6vw,23px);font-weight:700;line-height:1.4;list-style:none;display:flex}.qa summary::-webkit-details-marker{display:none}.qa__icon{background:var(--ink);border-radius:50%;flex:none;width:34px;height:34px;position:relative}.qa__icon:before,.qa__icon:after{content:"";background:var(--paper);height:2px;transition:transform .3s var(--ease-settle);position:absolute;top:16px;left:10px;right:10px}.qa__icon:after{transform:rotate(90deg)}.qa[open] .qa__icon:after{transform:rotate(0)}.qa p{max-width:40em;padding:0 22px 18px}@media (width<=900px){.faq__grid{grid-template-columns:1fr}}.contact,.quote{background:var(--pine);color:var(--cream);overflow:hidden}.contact:before,.quote:before{content:"";pointer-events:none;background:repeating-radial-gradient(circle at -6% 108%,#0000 0 70px,#f7f0e114 70px 72px);position:absolute;inset:0}.contact__grid,.quote__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:36px clamp(40px,6vw,96px);display:grid;position:relative}.channels{margin-top:clamp(22px,3vw,38px)}.channel{border-top:1px solid #f7f0e14d;justify-content:space-between;gap:20px;padding-block:12px;text-decoration:none;display:flex}.channel:last-child{border-bottom:1px solid #f7f0e14d}.channel__label{opacity:.85;flex:none}.channel__value{text-align:right;overflow-wrap:anywhere;font-weight:700}a.channel:hover .channel__value{color:var(--marigold)}.contact__fb{margin-top:20px}.form{background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:clamp(20px,3vw,40px)}.form__row{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}@media (width<=560px){.form__row{grid-template-columns:1fr}}.field{margin-bottom:16px}.field label{margin-bottom:5px;font-size:16px;font-weight:700;display:block}.field .opt{opacity:.7;font-weight:500}.field input,.field select,.field textarea{background:var(--cream);border:2px solid #0000;border-radius:16px;width:100%;min-height:52px;padding:10px 16px;transition:border-color .18s}.field textarea{resize:vertical;min-height:108px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);outline:0}.field [aria-invalid=true]{border-color:var(--error)}.field__error{color:var(--error);margin-top:4px;font-size:15px}.form__notice{opacity:.8;margin-bottom:14px;font-size:15px}.form .btn{width:100%}.form .btn--primary{background:var(--ink);color:var(--paper)}.form__next .btn{width:auto}.form__status{margin-top:14px;font-size:16px}.form__status:empty{display:none}.form__status.is-error{color:var(--error)}.form__next{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:10px;display:flex}@media (width<=900px){.contact__grid,.quote__grid{grid-template-columns:1fr}}.footer{background:var(--marigold);padding-block:clamp(30px,4vw,52px) 16px;font-size:15px;font-weight:700;overflow:hidden}.footer__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 32px;display:flex}.footer__nav{flex-wrap:wrap;gap:6px 20px;display:flex}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer__word{font-family:var(--font-display);letter-spacing:-.03em;text-align:center;white-space:nowrap;margin-top:16px;font-size:17.6vw;font-weight:800;line-height:.92}.footer__legal{margin-top:6px}@media (width<=760px){body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}}.mobilebar{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;background:var(--paper);transition:transform .28s var(--ease-settle);border-radius:999px;grid-template-columns:1fr 1fr 1.3fr;gap:6px;padding:6px;display:none;position:fixed;box-shadow:0 12px 30px -12px #10261e99}.mobilebar.is-away{transform:translateY(160%)}.mobilebar a{background:var(--cream);border-radius:999px;justify-content:center;align-items:center;min-height:46px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.mobilebar a.is-main{background:var(--marigold)}@media (width<=760px){.mobilebar{display:grid}}.pd{padding-top:calc(var(--header-h) + 14px);padding-bottom:clamp(40px,5vw,72px)}.crumbs{flex-wrap:wrap;gap:8px;margin-bottom:14px;font-size:15px;font-weight:700;display:flex}.crumbs a{text-decoration:none}.pd__grid{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);align-items:center;gap:clamp(24px,4vw,64px);display:grid}.pd__main{cursor:zoom-in;border-radius:var(--radius);background:0 0;border:0;width:100%;padding:0;display:block}.media{border-radius:var(--radius);aspect-ratio:8/5;background:var(--tone,var(--cream));display:block;position:relative;overflow:hidden}.media img{object-fit:contain;width:100%;height:100%}.pd__thumbs{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;margin-top:10px;display:grid}.pd__thumb{background:var(--tone,var(--cream));aspect-ratio:8/5;border:3px solid #0000;border-radius:14px;padding:0;transition:border-color .2s;overflow:hidden}.pd__thumb img{object-fit:cover;width:100%;height:100%}.pd__thumb[aria-current=true]{border-color:var(--ink)}.pd__tag{background:var(--ink);color:var(--paper);border-radius:999px;margin-bottom:12px;padding:4px 14px;font-size:14px;font-weight:700;display:inline-block;rotate:-3deg}.pd__name{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(42px,5vw,80px);font-weight:800;line-height:1.02}.pd__price{margin-top:14px;font-size:22px;font-weight:700}.pd__cta{gap:10px;margin-top:18px;display:grid}.pd__cta .btn--primary{background:var(--ink);color:var(--paper)}.specs{margin-top:22px}.specs div{border-top:1px solid var(--line);grid-template-columns:96px 1fr;gap:12px;padding-block:10px;display:grid}@media (width<=900px){.pd__grid{grid-template-columns:1fr}}.related{padding-bottom:clamp(56px,7vw,96px)}.related .h2{margin-bottom:clamp(20px,3vw,36px);font-size:clamp(32px,4vw,60px)}.related__grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(320px,30vw,440px);gap:clamp(10px,1.2vw,18px);display:grid}.related__grid .item{grid-column:auto}@media (width<=760px){.related__grid{grid-template-columns:1fr}.related__grid .item:nth-child(3){display:none}}.quote{padding-block:clamp(60px,7vw,104px);position:relative}.quote .h2{font-size:clamp(36px,4.6vw,72px)}.lightbox{background:var(--cream);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ink);border:0;margin:0;padding:0}.lightbox::backdrop{background:var(--cream)}.lightbox__frame{justify-content:center;align-items:center;display:flex;position:absolute;inset:64px 12px 72px;overflow:hidden}.lightbox__img{aspect-ratio:8/5;object-fit:contain;cursor:zoom-in;width:auto;max-width:100%;height:100%;max-height:100%;transition:transform .28s var(--ease-settle)}.lightbox__img.is-zoomed{cursor:zoom-out;transform:scale(2.2)}.lightbox__top{justify-content:space-between;align-items:center;gap:12px;font-weight:700;display:flex;position:absolute;top:10px;left:16px;right:12px}.lightbox__bottom{justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;bottom:14px;left:0;right:0}.lightbox .badge{position:static}.notfound{min-height:70vh;padding:calc(var(--header-h) + 40px) var(--gutter) 60px;text-align:center;place-content:center;gap:16px;display:grid}.notfound__links{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.notfound .btn--primary{background:var(--ink);color:var(--paper)}.preview-main{padding-top:var(--header-h)}.preview-banner{background:var(--ink);color:var(--paper);padding:12px var(--gutter);text-align:center;font-size:16px}.wall{border-radius:var(--radius);background:var(--pine-2);text-align:center;place-items:center;min-height:280px;display:grid}.frame[aria-hidden]{display:none}.projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px;display:grid;position:relative}.project .media{aspect-ratio:16/9}.project .media img,.project-page__images img{object-fit:cover}.project__name{margin-top:10px;font-size:clamp(22px,2.2vw,32px);font-weight:700}.project__name a{text-decoration:none}.project-page__meta{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px 48px;margin-block:32px;display:grid}.project-page__images{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.project-page__images .media--wide{aspect-ratio:16/9;grid-column:1/-1}.project-page__images .media--detail{aspect-ratio:1}@media (width<=560px){.filter{justify-content:space-between;width:100%;display:flex}.filter__btn{flex:auto;padding:6px 8px;font-size:14px}}@media (width<=379px){.filter{border-radius:26px;flex-wrap:wrap;justify-content:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker__row,.spin svg{animation:none}.rail{width:auto;overflow-x:auto}}@media (width<=430px){.hero__cta .btn{min-height:52px;padding-inline:20px;font-size:16px}}
