:root{--color-ink:#25231f;--color-muted:#726a5f;--color-soft:#f7f2ea;--color-paper:#fffaf2;--color-stone:#e9dfcf;--color-clay:#b98963;--color-brass:#d8b77a;--color-forest:#60663a;--color-line:#25231f1f;--shadow-soft:0 22px 70px #25231f1f;--shadow-card:0 16px 48px #25231f17;--radius-xl:32px;--radius-lg:22px;--radius-md:16px;--shell:min(1160px, calc(100% - 32px));--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-soft)}body{font-family:var(--sans);color:var(--color-ink);background:radial-gradient(circle at 15% 10%,#d8b77a38,#0000 28rem),radial-gradient(circle at 86% 22%,#5d6a5524,#0000 32rem),linear-gradient(#fbf6ee 0%,#f2eadf 54%,#fbf6ee 100%);margin:0;line-height:1.6}body:before{content:"";pointer-events:none;opacity:.36;background-image:linear-gradient(#25231f0a 1px,#0000 1px),linear-gradient(90deg,#25231f0a 1px,#0000 1px);background-size:56px 56px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 72%);mask-image:linear-gradient(#000 0%,#0000 72%)}img,svg{display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline-offset:4px;outline:3px solid #b88963a6}.shell{width:var(--shell);margin-inline:auto}.section{padding:clamp(76px,10vw,132px) 0}.skip-link{z-index:999;background:var(--color-ink);color:var(--color-paper);border-radius:999px;padding:12px 18px;transition:top .18s;position:absolute;top:-100px;left:16px}.skip-link:focus{top:14px}.site-header{z-index:50;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fbf6eed1;border-bottom:1px solid #25231f14;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:18px;min-height:76px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:12px;min-width:0;display:inline-flex}.brand__logo-wrap{background:#fffaf2c2;border:1px solid #25231f1a;border-radius:16px;place-items:center;width:48px;height:48px;display:grid;overflow:hidden;box-shadow:0 10px 26px #25231f13}.brand__logo{object-fit:contain;width:42px;height:auto}.brand__text{min-width:0}.brand strong,.brand em{line-height:1.05;display:block}.brand strong{font-family:var(--serif);font-size:1.08rem;font-weight:600}.brand em{color:var(--color-muted);letter-spacing:.1em;text-transform:uppercase;font-size:clamp(.58rem,1.7vw,.76rem);font-style:normal;font-weight:800}.nav-toggle{border:1px solid var(--color-line);width:44px;height:44px;color:var(--color-ink);background:#fffaf2cc;border-radius:999px;place-items:center;display:inline-grid}.nav-links{border:1px solid var(--color-line);box-shadow:var(--shadow-card);opacity:0;visibility:hidden;background:#fffaf2fa;border-radius:24px;gap:6px;padding:16px;transition:opacity .18s,transform .18s,visibility .18s;display:grid;position:absolute;top:76px;left:16px;right:16px;transform:translateY(-10px)}.nav-links.is-open{opacity:1;visibility:visible;transform:translateY(0)}.nav-links a:not(.button){color:var(--color-muted);border-radius:14px;padding:10px 12px;font-size:.94rem;transition:color .18s,background .18s}.nav-links a:not(.button):hover{color:var(--color-ink);background:#25231f0d}.nav-cta{margin-top:8px}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:700;line-height:1;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:inline-flex;position:relative;overflow:hidden}.button:after{content:"";background:linear-gradient(90deg,#0000,#ffffff38,#0000);transition:transform .52s;position:absolute;inset:0;transform:translate(-120%)}.button:hover:after{transform:translate(120%)}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--color-ink);color:var(--color-paper);box-shadow:0 12px 30px #25231f2e}.button--secondary{border-color:var(--color-line);color:var(--color-ink);background:#fffaf2a3}.hero{grid-template-columns:1fr;align-items:center;gap:56px;min-height:calc(100svh - 76px);padding:clamp(56px,8vw,110px) 0;display:grid}.eyebrow{color:var(--color-clay);letter-spacing:.2em;text-transform:uppercase;margin:0 0 14px;font-size:.74rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);letter-spacing:-.055em;font-weight:500;line-height:.98}h1{max-width:790px;margin-bottom:22px;font-size:clamp(3.2rem,10vw,7.8rem)}h2{margin-bottom:20px;font-size:clamp(2.25rem,5.6vw,5rem)}h3{letter-spacing:-.03em;font-size:1.15rem;line-height:1.15}.hero__lead{max-width:620px;color:var(--color-muted);font-size:clamp(1.05rem,2vw,1.24rem)}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-proof{grid-template-columns:1fr;gap:16px;max-width:620px;margin:40px 0 0;display:grid}.hero-proof div{border-top:1px solid var(--color-line);padding-top:18px}.hero-proof dt{color:var(--color-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}.hero-proof dd{align-items:center;gap:8px;margin:6px 0 0;font-weight:700;display:flex}.hero-proof dd svg{color:var(--color-forest)}.hero-visual{min-height:600px;box-shadow:var(--shadow-soft);background:linear-gradient(135deg,#fffaf2eb,#e9dfcfbd),radial-gradient(circle at 70% 24%,#d8b77a3d,#0000 18rem);border:1px solid #25231f17;border-radius:clamp(28px,5vw,48px);position:relative;overflow:hidden}.hero-visual:before{content:"";border:1px solid #25231f1a;border-radius:34px;position:absolute;inset:32px}.hero-visual__arch{background:linear-gradient(#5d6a553d,#25231f0d),repeating-linear-gradient(90deg,#0000 0 38px,#25231f14 39px 40px);border-radius:999px 999px 0 0;width:min(280px,44%);height:78%;position:absolute;bottom:0;right:clamp(24px,8vw,76px)}.material-board{background:var(--color-paper);box-shadow:var(--shadow-card);border:1px solid #25231f1a;position:absolute}.material-board--main{aspect-ratio:.78;border-radius:30px;width:min(360px,72%);padding:18px;top:68px;left:clamp(22px,5vw,62px)}.tile-grid{grid-template-columns:repeat(4,1fr);gap:8px;height:100%;display:grid}.tile-grid span{background:linear-gradient(145deg,#e9dfcfa3,#fffaf2db),radial-gradient(circle at 20% 20%,#b8896347,#0000 60%);border:1px solid #25231f12;border-radius:10px}.material-board--brand{background:#fffaf2eb;border-radius:30px;justify-items:center;gap:10px;width:min(330px,72%);padding:22px 22px 18px;display:grid;bottom:88px;right:clamp(20px,5vw,60px)}.material-board--brand img{width:min(210px,82%);height:auto}.material-board--brand p{max-width:230px;color:var(--color-muted);letter-spacing:.14em;text-align:center;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.hero-visual__caption{color:var(--color-paper);background:#25231fe0;border-radius:22px;align-items:flex-start;gap:10px;padding:16px 18px;font-size:.94rem;display:flex;position:absolute;bottom:24px;left:26px;right:26px}.section-intro{max-width:760px}.section-intro--center{text-align:center;margin-inline:auto}.section-intro__copy{color:var(--color-muted);font-size:1.06rem}.story{border-block:1px solid var(--color-line);background:#fffaf28f}.story__grid,.featured-project,.contact{grid-template-columns:1fr;gap:36px;display:grid}.story-card,.contact-card,.before-after,.featured-project__copy{border:1px solid var(--color-line);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:#fffaf2b8}.story-card{padding:clamp(26px,4vw,42px)}.story-card p{color:var(--color-muted);font-size:1.05rem}.story-card ul{gap:14px;margin:28px 0 0;padding:0;list-style:none;display:grid}.story-card li{align-items:center;gap:12px;display:flex}.story-card svg{color:var(--color-forest);flex:none}.services-grid,.process-grid{grid-template-columns:1fr;gap:18px;margin-top:42px;display:grid}.service-card,.process-step{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:#fffaf2b3;overflow:hidden;box-shadow:0 10px 26px #25231f0e}.service-card{flex-direction:column;min-height:280px;padding:26px;transition:transform .18s,box-shadow .18s,background .18s;display:flex}.service-card:hover{box-shadow:var(--shadow-card);background:#fffaf2f0;transform:translateY(-4px)}.service-card__number,.process-step span{color:var(--color-clay);letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;font-weight:800}.service-card h3{margin-top:34px;font-size:1.5rem}.service-card p{color:var(--color-muted)}.service-card a{color:var(--color-ink);align-items:center;gap:4px;margin-top:auto;font-weight:800;display:inline-flex}.featured-project__copy{align-self:center;padding:clamp(28px,4vw,48px)}.featured-project__copy p:not(.eyebrow){color:var(--color-muted)}.before-after{padding:clamp(12px,2vw,18px)}.before-after__frame{aspect-ratio:3/2;background:#d7c9b8;border-radius:24px;position:relative;overflow:hidden}.before-after__frame--portrait{aspect-ratio:3/4}.before-after__image,.before-after__reveal{position:absolute;inset:0}.before-after__image{object-fit:cover;width:100%;height:100%}.before-after__reveal{overflow:hidden}.before-after__reveal .before-after__image{max-width:none}.before-after__label{z-index:2;letter-spacing:.14em;text-transform:uppercase;background:#fffaf2e0;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:800;position:absolute;bottom:22px}.before-after__label--before{left:22px}.before-after__label--after{right:22px}.before-after input[type=range]{opacity:0;cursor:ew-resize;z-index:4;width:100%;height:100%;position:absolute;inset:0}.before-after__handle{background:var(--color-paper);pointer-events:none;z-index:3;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.before-after__handle:before{content:"↔";background:var(--color-paper);width:48px;height:48px;box-shadow:var(--shadow-card);color:var(--color-ink);border-radius:999px;place-items:center;font-weight:800;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portfolio{border-block:1px solid var(--color-line);background:#25231f09}.featured-work{border:1px solid var(--color-line);border-radius:var(--radius-xl);background:var(--color-paper);box-shadow:var(--shadow-card);margin-top:46px;display:grid;overflow:hidden}.featured-work>img{object-fit:cover;object-position:center;width:100%;height:min(620px,72vh)}.featured-work__body{align-self:center;padding:clamp(28px,5vw,54px)}.featured-work__body>p:first-child{color:var(--color-clay);letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;font-weight:800}.featured-work__body h3{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:12px;font-size:clamp(2rem,4vw,3.6rem);font-weight:500;line-height:1}.featured-work__body span{color:var(--color-forest);margin-bottom:22px;font-weight:800;display:block}.featured-work__body p:last-child,.progress-heading>p{color:var(--color-muted)}.progress-heading{gap:12px;margin-top:clamp(64px,9vw,108px);display:grid}.progress-heading h3{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4.5vw,3.7rem);font-weight:500;line-height:1}.progress-heading>p{max-width:500px;margin:0}.comparison-grid{grid-template-columns:1fr;gap:18px;margin-top:30px;display:grid}.comparison-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);overflow:hidden;box-shadow:0 10px 26px #25231f0e}.comparison-card .before-after{box-shadow:none;background:0 0;border:0;border-radius:0;padding:10px}.comparison-card .before-after__frame{border-radius:14px}.comparison-card__body{padding:10px 20px 22px}.comparison-card h4{font-family:var(--serif);margin:0 0 8px;font-size:1.35rem;font-weight:500}.comparison-card p{color:var(--color-muted);margin:0;font-size:.92rem}.process-grid{counter-reset:process}.process-step{background:#fffaf29e;padding:26px}.process-step h3{margin:24px 0 12px;font-size:1.45rem}.process-step p{color:var(--color-muted)}.contact{align-items:start}.contact__copy p:not(.eyebrow){color:var(--color-muted)}.contact-list{gap:12px;margin-top:28px;font-style:normal;display:grid}.contact-list a,.contact-list span{color:var(--color-ink);align-items:flex-start;gap:10px;display:flex}.contact-list svg{color:var(--color-clay);flex:none;margin-top:3px}.contact-card{padding:clamp(28px,5vw,48px)}.contact-card h3{font-family:var(--serif);letter-spacing:-.045em;margin-bottom:14px;font-size:clamp(2rem,4vw,3.2rem);font-weight:500;line-height:1}.contact-card>p:not(.eyebrow){color:var(--color-muted)}.contact-card__actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.footer{border-top:1px solid var(--color-line);background:#fffaf2bd;padding:44px 0}.footer__inner{color:var(--color-muted);gap:16px;display:grid}.footer__inner p{margin-bottom:0}.brand--footer{color:var(--color-ink)}@media (width>=640px){.hero-proof{grid-template-columns:repeat(3,1fr)}.services-grid,.process-grid,.comparison-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.nav-toggle{display:none}.nav-links{box-shadow:none;opacity:1;visibility:visible;background:0 0;border:0;border-radius:0;align-items:center;gap:2px;padding:0;display:flex;position:static;transform:none}.nav-cta{margin-top:0;margin-left:10px}.hero{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)}.story__grid,.featured-project,.contact{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:56px}.services-grid{grid-template-columns:repeat(2,1fr)}.featured-work{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr)}.featured-work>img{height:600px}.progress-heading{grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);align-items:end}.comparison-grid{grid-template-columns:repeat(3,1fr)}.process-grid{grid-template-columns:repeat(4,1fr)}.footer__inner{grid-template-columns:minmax(240px,1fr) auto auto;align-items:center}}@media (width>=1100px){.services-grid{grid-template-columns:repeat(4,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.trust{border-top:1px solid var(--color-line)}.trust-grid{grid-template-columns:1fr;gap:18px;margin-top:42px;display:grid}.trust-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:#fffaf2b3;min-height:220px;padding:28px;box-shadow:0 10px 26px #25231f0e}.trust-card span{color:var(--color-clay);letter-spacing:.16em;font-size:.75rem;font-weight:800}.trust-card h3{font-family:var(--serif);margin:42px 0 12px;font-size:1.5rem;font-weight:500}.trust-card p,.contact-card__privacy{color:var(--color-muted)}.contact-card__privacy{border-top:1px solid var(--color-line);padding-top:18px;font-size:.9rem}.footer__inner{gap:24px}.footer__brand{gap:12px;display:grid}.footer__brand p{max-width:420px}.footer__legal{flex-wrap:wrap;gap:10px 20px;display:flex}.footer__legal a{text-underline-offset:4px;-webkit-text-decoration:underline #25231f40;text-decoration:underline #25231f40}.footer__legal a:hover{color:var(--color-ink);text-decoration-color:currentColor}.footer__copyright{font-size:.9rem}.legal-page{min-height:70vh;padding:clamp(58px,8vw,96px) 0 clamp(76px,10vw,128px)}.legal-page__article{max-width:880px}.legal-page__back{color:var(--color-muted);align-items:center;gap:8px;margin-bottom:48px;font-weight:700;display:inline-flex}.legal-page__back:hover{color:var(--color-ink)}.legal-page__header{border-bottom:1px solid var(--color-line);padding-bottom:42px}.legal-page__header h1{margin-bottom:18px;font-size:clamp(2.8rem,8vw,6.4rem)}.legal-page__updated{color:var(--color-muted);font-size:.88rem}.legal-page__intro{max-width:700px;color:var(--color-muted);margin:24px 0 0;font-size:1.12rem}.legal-page__content{gap:42px;padding-top:48px;display:grid}.legal-page__content section{scroll-margin-top:110px}.legal-page__content h2{letter-spacing:-.035em;margin-bottom:18px;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.08}.legal-page__content p,.legal-page__content li{color:var(--color-muted)}.legal-page__content p:last-child{margin-bottom:0}.legal-page__content ul{gap:8px;padding-left:22px;display:grid}.legal-contact{gap:12px;margin-top:20px;font-style:normal;display:grid}.legal-contact strong{font-family:var(--serif);font-size:1.2rem}.legal-contact a,.legal-contact span{align-items:flex-start;gap:10px;display:flex}.legal-contact svg{color:var(--color-clay);flex:none;margin-top:4px}@media (width>=640px){.trust-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=900px){.footer__inner{grid-template-columns:minmax(280px,1fr) minmax(280px,1.2fr);align-items:start}.footer__copyright{grid-column:1/-1}}
