:root{color-scheme:light;--bg: #f7f1e4;--bg-alt: #fffbf4;--surface: rgba(255, 251, 244, .84);--surface-strong: #fff8ec;--text: #272117;--muted: #6c6253;--line: rgba(142, 109, 33, .16);--brand: #d4a11e;--brand-soft: #f2c44a;--brand-deep: #1f1f1d;--shadow: 0 20px 60px rgba(49, 37, 12, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,sans-serif;background:radial-gradient(circle at top left,rgba(212,161,30,.2),transparent 30%),radial-gradient(circle at top right,rgba(31,31,29,.06),transparent 24%),linear-gradient(180deg,#f1e7d4,#f8f3e8 28%,#fffbf4);color:var(--text)}a{color:inherit;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}img{display:block;max-width:100%}.page-shell{min-height:100vh}.route-loader{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.route-loader__card{padding:1rem 1.25rem;border:1px solid var(--line);border-radius:999px;background:#fff8eceb;box-shadow:var(--shadow)}.crm-shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr);background:radial-gradient(circle at top left,rgba(212,161,30,.16),transparent 24%),linear-gradient(180deg,#f1e7d4,#faf5ea)}.crm-login{min-height:100vh;display:grid;place-items:center;padding:2rem}.crm-login__card,.crm-panel,.crm-sidebar{border:1px solid var(--line);border-radius:1.6rem;background:#fff8ece6;box-shadow:var(--shadow)}.crm-login__card{width:min(100%,520px);padding:2rem}.crm-login__eyebrow,.crm-section__eyebrow,.crm-sidebar__eyebrow{margin:0 0 .6rem;color:var(--brand);font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.crm-login h1,.crm-toolbar h1,.crm-panel h2,.crm-sidebar h2{margin:0;font-family:Playfair Display,serif}.crm-login__hint{margin:1rem 0 0;color:var(--muted)}.crm-sidebar{position:sticky;top:0;height:100vh;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;border-radius:0;border-left:0;border-top:0;border-bottom:0}.crm-sidebar__nav{display:grid;gap:.8rem;margin:2rem 0}.crm-nav-button,.crm-button{border:0;border-radius:1rem;cursor:pointer;font:inherit}.crm-nav-button{padding:1rem 1.1rem;text-align:left;background:#1f1f1d0f;color:var(--text)}.crm-nav-button--active{background:var(--brand-deep);color:#fff}.crm-content{padding:1.6rem;height:100vh;overflow:hidden;display:flex;flex-direction:column}.crm-toolbar,.crm-panel__header,.crm-project-item,.crm-project-item__actions{display:flex;gap:1rem}.crm-toolbar,.crm-panel__header,.crm-project-item{align-items:center;justify-content:space-between}.crm-panel-grid{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:1.25rem;flex:1;min-height:0}.crm-panel-grid--gallery{grid-template-columns:minmax(0,360px) minmax(0,1fr)}.crm-panel{padding:1.4rem}.crm-panel--scroll-layout{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.crm-form{display:grid;gap:1rem}.crm-form--compact{margin-top:1.2rem}.crm-form label{display:grid;gap:.45rem}.crm-form span{font-size:.92rem;font-weight:700;color:var(--brand-deep)}.crm-form input,.crm-form textarea{width:100%;padding:.9rem 1rem;border:1px solid rgba(31,31,29,.14);border-radius:1rem;background:#fff;font:inherit;color:var(--text)}.crm-button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 1.1rem}.crm-button--primary{background:linear-gradient(135deg,var(--brand),var(--brand-soft));color:#241c0d}.crm-button--secondary,.crm-button--ghost{background:#1f1f1d14;color:var(--text)}.crm-button--danger{background:#8f2f2f;color:#fff}.crm-alert{margin:1rem 0;padding:.9rem 1rem;border-radius:1rem}.crm-alert--success{background:#27814c1f;color:#16502d}.crm-alert--error{background:#a330301f;color:#7f2323}.crm-list,.crm-selector-list,.crm-gallery-grid{display:grid;gap:1rem}.crm-list{margin-top:1rem}.crm-list--scroll,.crm-selector-list--scroll,.crm-gallery-grid--scroll{flex:1;min-height:0;overflow-y:auto;padding-right:.35rem;padding-bottom:1rem;scroll-padding-bottom:1rem}.crm-project-item{padding:1rem;border:1px solid var(--line);border-radius:1.2rem;background:#fff}.crm-project-item img{width:6rem;height:6rem;border-radius:1rem;object-fit:cover}.crm-project-item h3,.crm-selector strong{margin:0}.crm-project-item p,.crm-project-item span,.crm-selector span,.crm-gallery-item figcaption{color:var(--muted)}.crm-project-item>div:first-of-type{flex:1}.crm-selector{display:grid;gap:.35rem;width:100%;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#fff;text-align:left;cursor:pointer}.crm-selector--active{border-color:#17324a59;box-shadow:0 0 0 2px #17324a14}.crm-selector-list--scroll{margin-top:1rem}.crm-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.crm-gallery-item{margin:0;padding:.9rem;border:1px solid var(--line);border-radius:1.1rem;background:#fff;display:grid;gap:.8rem}.crm-gallery-item img{width:100%;height:14rem;border-radius:.9rem;object-fit:cover}.crm-gallery-item__caption-row,.crm-gallery-item__actions,.crm-gallery-item__editor{display:grid;gap:.75rem}.crm-gallery-item__caption-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.crm-gallery-item__caption-field{display:grid;gap:.4rem}.crm-gallery-item__caption-field span{font-size:.85rem;font-weight:700;color:var(--brand-deep)}.crm-gallery-item__caption-field input{width:100%;padding:.8rem .9rem;border:1px solid rgba(31,31,29,.14);border-radius:.85rem;background:#fff;font:inherit;color:var(--text)}.crm-icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--line);border-radius:999px;background:#1f1f1d0f;color:var(--brand-deep);cursor:pointer}.crm-icon-button svg{width:1rem;height:1rem}.container{width:min(1160px,calc(100% - 2rem));margin:0 auto}.topbar{border-bottom:1px solid var(--line);background:#fffbf48f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar__inner,.site-header__inner,.hero__grid,.about-grid,.site-footer__grid{display:grid;gap:1rem}.topbar__inner{grid-template-columns:1fr auto;padding:.85rem 0}.topbar__group{display:flex;gap:1rem;flex-wrap:wrap;color:var(--muted);font-size:.92rem}.topbar__group--right{justify-content:flex-end}.site-header{position:sticky;top:0;z-index:20;background:#f7f1e4d6;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.site-header__inner{grid-template-columns:auto 1fr;align-items:center;padding:.65rem 0}.brand{display:inline-flex;align-items:center;gap:.85rem}.brand__logo{width:auto;height:3.9rem;object-fit:contain}.brand__mark{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.9rem;background:linear-gradient(135deg,var(--brand-deep),#4b473d);color:#fff;font-weight:800;letter-spacing:.05em}.brand__text{font-weight:800;letter-spacing:.02em}.site-nav{display:flex;justify-content:flex-end;gap:1.25rem;flex-wrap:wrap;color:var(--muted)}.site-nav a:hover,.topbar a:hover,.footer-links a:hover{color:var(--brand-deep)}.hero,.section,.site-footer{padding:5.5rem 0}.hero__grid,.about-grid{grid-template-columns:1.15fr .85fr;align-items:center}.hero__eyebrow,.section-header__eyebrow{display:inline-block;margin-bottom:1rem;color:var(--brand);font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1,.section-header h2{margin:0;font-family:Playfair Display,serif;line-height:.96;letter-spacing:-.03em}.hero h1{font-size:clamp(2.55rem,5.5vw,4.6rem);max-width:11ch}.hero p,.section-header p,.info-card p,.service-card p,.reason-card p,.site-footer p{color:var(--muted);line-height:1.8}.hero__content p{max-width:62ch;margin:1.5rem 0 0}.hero__actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:0 1.4rem;border-radius:999px;border:1px solid transparent;font-weight:700}.button--primary{background:linear-gradient(135deg,var(--brand),var(--brand-soft));color:#241c0d}.button--secondary{border-color:var(--line);background:#fffbf4c7}.hero__metrics,.stats-grid,.card-grid,.client-grid,.gallery-grid{display:grid;gap:1.25rem}.hero__metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2rem}.metric-card,.info-card,.service-card,.gallery-card,.stat-card,.reason-card,.client-card,.about-media,.hero__visual img{border:1px solid var(--line);box-shadow:var(--shadow)}.metric-card,.info-card,.service-card,.stat-card,.reason-card,.client-card{background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:1.5rem}.metric-card{padding:1.25rem}.metric-card strong,.stat-card strong{display:block;font-size:2rem;color:var(--brand-deep)}.metric-card span,.stat-card span{color:var(--muted);line-height:1.5}.hero__visual{position:relative}.hero__visual:before{content:"";position:absolute;top:8%;right:-6%;bottom:-8%;left:10%;border-radius:2rem;background:linear-gradient(135deg,#1f1f1d2e,#d4a11e38);z-index:-1}.hero__visual img,.about-media img{width:100%;height:100%;object-fit:cover;border-radius:2rem}.section--light{background:#fffbf49e;border-block:1px solid var(--line)}.section-header{max-width:44rem;margin-bottom:2.5rem}.section-header h2{font-size:clamp(2rem,3.8vw,3.15rem)}.section-header--centered{margin-inline:auto;text-align:center}.about-media{overflow:hidden;padding:.6rem;border-radius:2rem;background:var(--surface-strong)}.card-grid--three,.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card,.service-card,.reason-card,.stat-card{padding:1.6rem}.info-card__index,.service-card__pill{display:inline-flex;margin-bottom:1rem;padding:.35rem .7rem;border-radius:999px;background:#d4a11e24;color:var(--brand-deep);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.info-card h3,.service-card h3,.gallery-card h3,.reason-card h3{margin:0;font-size:1.15rem}.gallery-showcase__header{display:flex;gap:1rem;align-items:end;justify-content:space-between;margin-bottom:1.5rem}.gallery-showcase__actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.gallery-nav{min-height:3rem;padding:0 1rem;border:1px solid var(--line);border-radius:999px;background:#fffbf4cc;cursor:pointer;font:inherit;color:var(--text)}.gallery-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,calc((100% - 3rem)/4));gap:1rem;overflow-x:auto;padding-bottom:.3rem;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.gallery-carousel::-webkit-scrollbar{display:none}.projects-index-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.gallery-card{position:relative;overflow:hidden;min-height:22rem;border-radius:1.75rem;scroll-snap-align:start}.gallery-card--interactive{cursor:pointer}.gallery-card--carousel{min-height:24rem}.gallery-card--grid{min-height:23rem}.gallery-card img{width:100%;height:100%;object-fit:cover}.gallery-card__content{position:absolute;inset:auto 1rem 1rem 1rem;padding:1rem 1.1rem;border-radius:1.2rem;background:linear-gradient(180deg,#0f161e26,#0f161edb);color:#fff}.gallery-card__content span{display:inline-block;margin-bottom:.4rem;color:#fffc;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.gallery-card__content p{margin:.6rem 0 0;color:#ffffffd6}.gallery-state{margin:0 0 1.25rem;text-align:center;color:var(--text-muted)}.project-page-shell{min-height:100vh;padding:4rem 0}.project-page{display:grid;gap:1.5rem}.project-page__topbar{display:grid;gap:.75rem}.project-page__back{display:inline-flex;align-items:center;width:fit-content;min-height:2.9rem;padding:0 1rem;border-radius:999px;background:#1f1f1d14}.project-page__hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1.25rem;align-items:center;padding:1.5rem;border:1px solid var(--line);border-radius:1.5rem;background:var(--surface-strong);box-shadow:var(--shadow)}.project-page__hero img{width:100%;height:22rem;object-fit:cover;border-radius:1.25rem}.project-page__eyebrow{margin:0 0 .5rem;color:var(--brand-deep);font-size:.85rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.project-page__hero h1{margin:0 0 .75rem;font-family:Playfair Display,serif;font-size:clamp(1.95rem,3.2vw,2.7rem)}.project-page__hero p{margin:0}.project-page__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-page__image{margin:0;padding:.9rem;border:1px solid var(--line);border-radius:1.1rem;background:var(--surface-strong);box-shadow:var(--shadow)}.project-page__image img{width:100%;height:18rem;object-fit:cover;border-radius:1rem}.project-page__image figcaption,.project-page__empty{margin-top:.6rem;color:var(--text-muted)}.stats-section{padding-top:1rem}.stat-card{text-align:center}.client-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.client-card{display:grid;place-items:center;min-height:9.5rem;padding:1.25rem}.client-card__media{display:grid;place-items:center;width:100%;min-height:6.5rem;padding:1rem;border:1px solid rgba(31,31,29,.08);border-radius:1.25rem;background:#fffffff5;box-shadow:inset 0 1px #fffc}.client-card__logo{max-width:100%;max-height:4.4rem;width:auto;object-fit:contain;filter:saturate(.98) contrast(1.02)}.site-footer{background:var(--brand-deep);color:#ffffffe0}.site-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer p,.footer-links a{color:#ffffffb8}.footer-links{display:flex;gap:1rem;flex-wrap:wrap}.footer-links--stacked{flex-direction:column;align-items:flex-start;gap:.45rem;margin-bottom:1rem}@media (max-width: 980px){.crm-shell,.hero__grid,.about-grid,.card-grid--three,.stats-grid,.client-grid,.site-footer__grid,.project-page__hero,.project-page__grid,.projects-index-grid{grid-template-columns:1fr}.gallery-showcase__header{align-items:flex-start;flex-direction:column}.gallery-carousel{grid-auto-columns:minmax(280px,78vw)}.crm-sidebar{position:static;height:auto;border-radius:0 0 1.6rem 1.6rem}.crm-content{height:auto;overflow:visible}.crm-panel-grid,.crm-panel-grid--gallery,.crm-gallery-grid{grid-template-columns:1fr}.crm-list--scroll,.crm-selector-list--scroll,.crm-gallery-grid--scroll{overflow:visible;padding-right:0}.topbar__inner,.site-header__inner{grid-template-columns:1fr}.site-nav,.topbar__group--right{justify-content:flex-start}.hero__metrics,.gallery-grid{grid-template-columns:1fr}}@media (max-width: 640px){.hero,.section,.site-footer{padding:4rem 0}.crm-content,.crm-login{padding:1rem}.container{width:min(100% - 1.25rem,1160px)}.brand{align-items:flex-start}.brand__logo{height:3.2rem}.brand__text{max-width:11rem}}
