:root{--ink: #11283a;--ink-soft: #38576f;--sand: #f3efe7;--foam: #f7fafc;--sea: #6f97ad;--driftwood: #cab79f;--line: #d7dde2;--site-header-height: 96px}*{box-sizing:border-box}html{scroll-padding-top:var(--site-header-height)}body{margin:0;font-family:Avenir Next,Segoe UI,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f7fafb,#edf3f7 60%,#f6f1e8);overflow-anchor:none}.site-shell{min-height:100vh}main{position:relative;z-index:5}.site-header{position:fixed;top:0;left:0;right:0;z-index:30;height:var(--site-header-height);padding:0 clamp(1rem,4vw,3rem);background:#f7fafce0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(17,40,58,.08);display:flex;align-items:center;transition:background-color .24s ease,border-color .24s ease}.site-header--transparent{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:transparent}.site-header--transparent .nav-links,.site-header--transparent .menu-toggle{opacity:0;pointer-events:none;transition:opacity .16s ease}.site-header--transparent .brand-link{margin-top:.6rem;filter:drop-shadow(0 2px 10px rgba(0,0,0,.45))}.site-nav{width:min(1180px,100%);margin:0 auto;min-height:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem}.brand-link{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);min-width:0}.brand-logo{width:160px;height:auto;display:block}.brand-text{display:none;font-weight:700;letter-spacing:.03em}.brand-text.is-visible{display:inline}.nav-links{display:flex;gap:1rem;align-items:center}.nav-links a{color:var(--ink);text-decoration:none;opacity:.95;font-weight:500}.nav-links .cta{border:1px solid rgba(17,40,58,.2);border-radius:999px;padding:.4rem .9rem;background:#fff}.menu-toggle{display:none;width:2.5rem;height:2.5rem;border-radius:10px;border:1px solid rgba(17,40,58,.15);background:#fff;padding:.45rem;cursor:pointer}.menu-toggle span{display:block;width:100%;height:2px;background:var(--ink);margin:.27rem 0;border-radius:999px}.hero{position:relative;background:linear-gradient(90deg,#14100eb8,#14100e7a 34%,#14100e1a 65%),linear-gradient(180deg,#14100e1a,#14100e3d),url(/hero-main.jpg);background-size:cover;background-position:center;color:#fff;padding:3rem clamp(1rem,4vw,3rem) 3.75rem;height:calc(100svh - var(--site-header-height));min-height:540px;display:flex;align-items:center}.hero-content{width:min(1180px,100%);margin:0 auto;max-width:none;padding-left:clamp(0rem,8vw,8rem);display:grid;gap:1rem;align-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.95rem;font-weight:500;color:#f0be7d;margin:0;text-shadow:0 1px 12px rgba(0,0,0,.35)}.hero h1{font-size:clamp(1.9rem,3.6vw,2.95rem);line-height:1.02;max-width:14ch;margin:0;font-weight:800;letter-spacing:-.02em;text-shadow:0 3px 16px rgba(0,0,0,.3)}.hero p{font-size:clamp(.98rem,1.2vw,1.1rem);max-width:42ch;margin:0;color:#fffffff2;line-height:1.4;text-shadow:0 2px 12px rgba(0,0,0,.25)}.hero .eyebrow+h1+p{margin-top:.25rem}.primary-btn{display:inline-block;margin-top:.6rem;padding:1rem 1.8rem;border-radius:.9rem;background:linear-gradient(180deg,#f39b2f,#ea8218);color:#fff;text-decoration:none;font-weight:700;font-size:.98rem;width:fit-content;box-shadow:0 10px 28px #ab551059;border:1px solid rgba(255,255,255,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px #ab55106b;filter:saturate(1.03)}.roomwalk{position:relative;background:#10202b;min-height:100vh}.roomwalk.is-scrubbing{height:460vh}.roomwalk-stage{position:sticky;top:0;height:100vh;overflow:hidden;background:#10202b}.roomwalk-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;background:#10202b url(/roomwalk/poster.jpg) center / cover no-repeat}.roomwalk-bar{position:absolute;left:0;right:0;bottom:0;padding:1.4rem clamp(1.25rem,4vw,3rem);display:flex;flex-direction:column;gap:.9rem;background:#09141ce6}.roomwalk-bar-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.roomwalk-bar-main h2{margin:0;color:#fff;font-size:clamp(1.1rem,2.4vw,1.55rem);font-weight:700;letter-spacing:-.01em}.roomwalk-bar-main .primary-btn{margin:0;flex-shrink:0}.roomwalk-preview{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.14);animation:roomwalk-rise .38s ease both}.roomwalk-preview-text{max-width:36ch}.roomwalk-preview-title{margin:0 0 .2rem;color:#f0be7d;font-weight:700;font-size:.95rem}.roomwalk-preview-text p:last-child{margin:0;color:#ffffffd9;font-size:.88rem;line-height:1.4}.roomwalk-proof{display:flex;gap:.55rem}.roomwalk-proof-item{width:clamp(58px,9vw,84px);aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.35);background:#ffffff14;transition:transform .16s ease,border-color .16s ease}.roomwalk-proof-item:hover{transform:translateY(-3px);border-color:#f0be7d}.roomwalk-proof-item img{width:100%;height:100%;object-fit:cover;display:block}@keyframes roomwalk-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.roomwalk-preview{animation:none}}.footer-note{max-width:60ch;margin:.5rem auto 0;font-size:.82rem;line-height:1.5;opacity:.75}@media(max-width:640px){.roomwalk.is-scrubbing{height:360vh}.roomwalk-bar{padding:1.1rem 1.25rem;gap:.75rem}.roomwalk-bar-main,.roomwalk-preview{flex-direction:column;align-items:stretch;text-align:center}.roomwalk-bar-main .primary-btn{text-align:center}.roomwalk-preview-text{max-width:none}.roomwalk-proof{justify-content:center}}.section{width:min(1100px,92vw);margin:0 auto;padding:4rem 0}.section h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-top:0}.about{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.about-card{background:var(--foam);border:1px solid var(--line);border-radius:14px;padding:1.25rem}.about-card ul{margin:0;padding-left:1.2rem}.projects{background:#fff9;border:1px solid var(--line);border-radius:18px;padding:2rem}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.project-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 0 1rem;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.project-card:hover{transform:translateY(-4px);box-shadow:0 10px 22px #11283a1f}.project-media{position:relative}.media-button{border:0;padding:0;width:100%;cursor:zoom-in;background:transparent}.project-media img{width:100%;aspect-ratio:16 / 10;object-fit:cover;display:block;border-bottom:1px solid var(--line)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;width:2.1rem;height:2.1rem;border-radius:999px;background:#11283abf;color:#fff;font-size:1.3rem;cursor:pointer}.carousel-arrow.left{left:.55rem}.carousel-arrow.right{right:.55rem}.carousel-dots{position:absolute;left:50%;bottom:.6rem;transform:translate(-50%);display:flex;gap:.35rem}.dot{width:.52rem;height:.52rem;border-radius:50%;border:1px solid rgba(255,255,255,.85);background:#ffffff8c;cursor:pointer}.dot.active{background:#fff}.location{color:var(--ink-soft);font-size:.9rem;margin:.85rem 1rem .35rem}.project-card h3,.project-card p{padding:0 1rem}.projects-note{margin-top:1rem;font-size:.92rem;color:var(--ink-soft)}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.contact-grid p{background:#fff;padding:1rem;border:1px solid var(--line);border-radius:10px;margin:0}.estimate{background:linear-gradient(180deg,#fff,#f8f3ea);border:1px solid #e5ddd1;border-radius:18px;padding:2rem}.estimate-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}.estimate-form label{display:grid;gap:.4rem;font-size:.95rem}.estimate-form input,.estimate-form select,.estimate-form textarea{width:100%;border:1px solid #ccd6de;border-radius:8px;padding:.7rem;font:inherit}.estimate-form .full-width{grid-column:1 / -1}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.estimate-form button{grid-column:1 / -1;justify-self:start;border:none;border-radius:10px;background:var(--ink);color:#fff;padding:.75rem 1.1rem;font-weight:600;cursor:pointer}.status{margin-top:1rem;padding:.65rem .9rem;border-radius:8px}.status.success{background:#edf9f2;color:#145438;border:1px solid #b8e3c8}.status.error{background:#fff1f1;color:#8b2727;border:1px solid #f0bcbc}.footer{border-top:1px solid var(--line);text-align:center;padding:1.25rem;color:var(--ink-soft)}.lightbox{position:fixed;inset:0;z-index:1000;background:#0a151fe6;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:1.25rem}.lightbox-content{margin:0;max-width:min(1080px,92vw);justify-self:center}.lightbox-content img{width:100%;max-height:78vh;object-fit:contain;border-radius:12px;background:#0d1d2b}.lightbox-content figcaption{color:#e8eff4;margin-top:.7rem;text-align:center}.lightbox-arrow,.lightbox-close{border:0;width:2.6rem;height:2.6rem;border-radius:999px;background:#ffffff29;color:#fff;cursor:pointer;font-size:1.5rem}.lightbox-close{position:absolute;top:.9rem;right:.9rem}@media(max-width:960px){.project-grid,.contact-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.brand-logo{width:132px}}@media(max-width:860px){:root{--site-header-height: 74px}.site-nav{position:relative;min-height:100%}.menu-toggle{display:block;margin-left:auto}.nav-links{position:absolute;top:calc(100% + .65rem);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:.35rem;padding:.6rem;background:#fffffff7;border:1px solid rgba(17,40,58,.1);border-radius:14px;box-shadow:0 16px 32px #11283a1f}.nav-links.is-open{display:flex}.nav-links a{padding:.7rem .8rem;border-radius:10px}.nav-links .cta{text-align:center;background:var(--ink);color:#fff;border-color:transparent}.brand-logo{width:116px}.brand-text{display:none}}@media(max-width:640px){.hero-content{padding-left:0;gap:.75rem}.hero{height:calc(100svh - var(--site-header-height));min-height:520px;padding-top:1.5rem;padding-bottom:1.8rem;background-position:62% center;align-items:flex-end}.eyebrow{font-size:.78rem;letter-spacing:.1em}.hero h1{max-width:10.5ch;font-size:clamp(1.9rem,9vw,2.7rem)}.hero p{max-width:30ch;font-size:1rem}.primary-btn{width:100%;text-align:center}.carousel-arrow{width:1.9rem;height:1.9rem}.lightbox{grid-template-columns:1fr;justify-items:center;padding-top:3.25rem}.lightbox-arrow{width:2.2rem;height:2.2rem}.project-grid,.contact-grid,.estimate-form{grid-template-columns:1fr}.site-header,.section,.projects,.estimate{padding-left:1rem;padding-right:1rem}}
