:root{--ink:#171717;--muted:#69645d;--paper:#f8f6f1;--ivory:#fffdf8;--panel:#fffdf8;--header-bg:#f8f6f1db;--nav-text:#403c37;--field-bg:#f7f4ed;--control-bg:#f7f4ed;--control-border:#17171729;--disabled-bg:#e9e6e0;--disabled-text:#77716a;--disabled-border:#d7d2ca;--disabled-button-bg:#96938e;--disabled-button-text:#24211e;--stone:#c9c0b2;--clay:#9b6f49;--moss:#495648;--wine:#51363d;--gold:#c8a45d;--line:#1717171f;--shadow:0 28px 80px #17171724;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--ink:#f4efe7;--muted:#b8afa4;--paper:#11100e;--ivory:#191715;--panel:#201d1a;--header-bg:#11100ee0;--nav-text:#d8d0c5;--field-bg:#151311;--control-bg:#2a2622;--control-border:#f4efe733;--disabled-bg:#292622;--disabled-text:#8f8880;--disabled-border:#403b36;--disabled-button-bg:#4a4641;--disabled-button-text:#a9a29a;--stone:#6d655b;--clay:#d2a66f;--moss:#9daa92;--wine:#8f626f;--gold:#dbb96d;--line:#f4efe724;--shadow:0 28px 90px #00000070;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}body,.site-header,.stats-band div,.process-band article,.service-card,.review-card,.quote-form,.split-section,.quote-section,.primary-button,.secondary-button,.theme-toggle,.language-button,.icon-action{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}.site-header{z-index:20;background:var(--header-bg);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:14px clamp(20px,5vw,72px);display:flex;position:sticky;top:0}.brand{min-width:0;color:var(--clay);letter-spacing:0;text-transform:uppercase;align-items:center;gap:12px;font-size:.82rem;font-weight:800;display:inline-flex}.brand img{width:58px;height:auto}.desktop-nav{color:var(--nav-text);align-items:center;gap:26px;font-size:.92rem;display:flex}.desktop-nav a{border:1px solid #0000;border-radius:999px;padding:9px 14px;transition:color .18s,background-color .18s,border-color .18s,transform .18s;position:relative}.desktop-nav a:after{content:"";background:var(--gold);opacity:0;transform-origin:50%;border-radius:999px;height:1px;transition:opacity .18s,transform .18s;position:absolute;bottom:5px;left:16px;right:16px;transform:scaleX(.3)}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--clay);outline:none;transform:translateY(-1px)}.desktop-nav a[aria-current=page]{color:var(--clay);background:color-mix(in srgb, var(--clay) 12%, transparent);border-color:color-mix(in srgb, var(--clay) 38%, transparent);box-shadow:none;animation:.22s nav-active-pop}.desktop-nav a[aria-current=page]:after,.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{opacity:1;transform:scaleX(1)}@keyframes nav-active-pop{0%{transform:translateY(2px)}to{transform:translateY(0)}}.header-actions{align-items:center;gap:10px;display:flex}.theme-toggle{width:44px;height:44px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.language-switcher{position:relative}.language-button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:inline-flex}.language-button-marker{letter-spacing:0;font-size:.84rem;font-weight:900}.language-menu{z-index:30;background:var(--panel);border:1px solid var(--line);min-width:116px;box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:8px;gap:6px;padding:8px;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-4px)}.language-switcher:hover .language-menu,.language-switcher:focus-within .language-menu{opacity:1;pointer-events:auto;transform:translateY(0)}.language-menu a{color:var(--ink);border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;font-weight:800;display:flex}.language-menu-marker{justify-content:center;width:18px;font-size:.56rem;font-weight:900;line-height:1;display:inline-flex}.language-menu a[aria-current=true],.language-menu a:hover,.language-menu a:focus-visible{color:var(--clay);background:color-mix(in srgb, var(--clay) 12%, transparent);outline:none}.theme-toggle svg{position:absolute}.theme-toggle-moon,:root[data-theme=dark] .theme-toggle-sun{opacity:0;transform:scale(.72)rotate(-18deg)}.theme-toggle-sun,:root[data-theme=dark] .theme-toggle-moon{opacity:1;transform:scale(1)rotate(0)}.theme-toggle svg{transition:opacity .18s,transform .18s}.icon-action,.floating-whatsapp{width:44px;height:44px;color:var(--paper);background:var(--ink);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.floating-whatsapp{z-index:25;position:fixed;bottom:22px;right:22px;box-shadow:0 16px 40px #1717173d}.ambiance-player{z-index:25;position:fixed;bottom:22px;right:78px}.ambiance-button{min-height:44px;color:var(--paper);background:var(--ink);border:1px solid color-mix(in srgb, var(--ink) 82%, var(--clay));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-weight:800;display:inline-flex;box-shadow:0 16px 40px #1717172e}.hero{grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);align-items:center;gap:clamp(34px,6vw,72px);min-height:calc(100vh - 78px);padding:clamp(34px,6vw,76px) clamp(20px,5vw,72px) 42px;display:grid;overflow:hidden}.eyebrow,.section-heading span{color:var(--clay);letter-spacing:0;text-transform:uppercase;margin:0 0 16px;font-size:.78rem;font-weight:800;display:inline-block}.hero h1{letter-spacing:0;max-width:720px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(4rem,10vw,8.7rem);line-height:.86}.hero-text{max-width:640px;margin:26px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,3.25rem);line-height:1.04}.hero-description,.section-heading p,.about-copy p,.quote-copy p{max-width:680px;color:var(--muted);font-size:1rem;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.primary-button,.secondary-button{border:1px solid var(--ink);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font-weight:800;display:inline-flex}.primary-button{color:var(--paper);background:var(--ink)}.secondary-button{color:var(--ink);background:0 0}.hero-visual{min-height:650px;position:relative}.material-board{box-shadow:var(--shadow);border-radius:8px;position:absolute}.board-wood{background:linear-gradient(110deg,#ffffff47,#0000 28%),repeating-linear-gradient(92deg,#87603f 0 18px,#b98d5a 18px 34px,#6d4a31 34px 48px);inset:2% 30% 18% 6%}.board-stone{background:linear-gradient(135deg,#ffffff85,#0000 30%),radial-gradient(circle at 25% 30%,#f3efe7 0 12%,#0000 13%),linear-gradient(145deg,#b9b1a4,#eee7dc 47%,#8c8175);inset:24% 7% 8% 42%}.board-charcoal{background:linear-gradient(140deg,#202020,#5b514a 42%,#1a1a1a);inset:8% 12% 54% 48%}.hero-logo-card{aspect-ratio:1.22;background:#171717eb;border:1px solid #fffdf833;border-radius:8px;place-items:center;width:min(360px,52vw);padding:22px;display:grid;position:absolute;bottom:13%;right:7%;box-shadow:0 30px 90px #17171742}.hero-logo-card img{width:100%;height:auto}.stats-band,.process-band{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:0 clamp(20px,5vw,72px);display:grid}.stats-band div,.process-band article{background:var(--panel);padding:30px}.stats-band strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.75rem,3vw,3rem);display:block}.stats-band span,.project-card span{color:var(--muted);text-transform:uppercase;font-size:.86rem}.section,.split-section,.quote-section{padding:clamp(72px,9vw,124px) clamp(20px,5vw,72px)}.section-heading{max-width:820px;margin-bottom:34px}.section-heading h2,.split-section h2,.quote-copy h2,.quote-copy h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,5rem);line-height:.98}.service-grid,.project-grid,.review-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.service-card,.review-card,.quote-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px}.service-flip-card{perspective:1200px;outline:none;min-height:285px}.service-flip-inner{width:100%;min-height:100%;transform-style:preserve-3d;transition:transform .52s;position:relative}.service-flip-card:hover .service-flip-inner,.service-flip-card:focus-visible .service-flip-inner,.service-flip-card:focus-within .service-flip-inner{transform:rotateY(180deg)}.service-flip-front,.service-flip-back{backface-visibility:hidden;min-height:285px}.service-flip-front{height:100%}.service-flip-back{color:#fffdf8;border:1px solid var(--line);box-shadow:var(--shadow);background:#171717;border-radius:8px;align-items:flex-end;padding:22px;display:flex;position:absolute;inset:0;overflow:hidden;transform:rotateY(180deg)}.service-flip-back img{object-fit:cover}.service-flip-back:after{content:"";background:linear-gradient(#17171700,#17171770),linear-gradient(90deg,#1717172e,#0000 62%);position:absolute;inset:0}.service-flip-back div{z-index:1;position:relative}.service-flip-back span{color:#fffdf8b8;text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:800;display:block}.service-flip-back p{color:#fffdf8;max-width:320px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;line-height:1.12}.service-card svg,.review-card svg,.process-band svg,.highlight-list svg{color:var(--clay)}.service-card h3,.project-card h3,.review-card h3,.process-band h3{margin:18px 0 10px;font-size:1.05rem}.service-card p,.review-card p,.process-band p,.project-card p{color:var(--muted);line-height:1.65}.project-card p{min-height:3.3em}.split-section{background:var(--panel);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(28px,5vw,76px);display:grid}.about-split .about-copy{padding-top:34px}.about-page .page-intro,.about-page .split-section,.about-page .page-cta{padding-inline:clamp(20px,8vw,140px)}.highlight-list{gap:12px;margin-top:28px;display:grid}.highlight-list div,.contact-list a,.contact-list span,.footer-links span,.footer-links a{align-items:center;gap:10px;display:flex}.dark-section{color:#fffdf8;background:#171717}.dark-section .section-heading p,.dark-section .project-card p,.dark-section .project-card span{color:#fffdf8ad}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{width:100%;color:inherit;font:inherit;text-align:left;background:#202020;border:1px solid #fffdf81f;border-radius:8px;flex-direction:column;padding:0;transition:transform .18s,border-color .18s,box-shadow .18s,background .18s;display:flex;overflow:hidden}.project-card-copy{flex-direction:column;flex:1;padding:22px;display:flex}.project-card-copy p{margin-bottom:0}.project-card-clickable{cursor:pointer}.project-card-clickable:hover,.project-card-clickable:focus-visible{background:#252321;border-color:#d6b06fd1;outline:none;transform:translateY(-6px);box-shadow:0 22px 50px #00000057}.project-card-clickable:hover .project-surface-image,.project-card-clickable:focus-visible .project-surface-image{transform:scale(1.04)}.project-card-muted{cursor:default}.project-media-frame{padding:16px 16px 0}.project-surface{aspect-ratio:16/10;background:#111;min-height:0;position:relative;overflow:hidden}.project-surface-image{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .24s;display:block;position:absolute;inset:0}.project-surface-fill{position:absolute;inset:0}.surface-1{background:repeating-linear-gradient(95deg,#8e603f 0 22px,#c2935e 22px 44px,#5f3f2b 44px 58px)}.surface-2{background:linear-gradient(135deg,#ffffff6b,#0000 32%),linear-gradient(90deg,#e8e1d7,#b6aa9d 50%,#f8f3ea)}.surface-3{background:linear-gradient(150deg,#0000 0 46%,#ffffff2e 47% 49%,#0000 50%),linear-gradient(135deg,#3d4540,#73806b,#211f1d)}.process-band{margin-top:clamp(60px,8vw,100px)}.about-process{margin-top:clamp(44px,6vw,76px);margin-bottom:clamp(44px,6vw,76px)}.page-intro{padding:clamp(56px,8vw,104px) clamp(20px,8vw,140px) clamp(58px,8vw,96px)}.page-intro h1{max-width:1050px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,7rem);line-height:.94}.page-intro>p:last-child{max-width:720px;color:var(--muted);margin:28px 0 0;font-size:1.08rem;line-height:1.75}.page-intro.dark-section>p:last-child{color:#fffdf8ad}.page-section{padding-top:clamp(40px,5vw,64px)}.compact-page-section{padding-top:clamp(24px,3.4vw,42px)}.why-us-page .page-intro,.why-us-page .page-cta,.why-values-section,.why-us-page .google-reviews-section{padding-inline:clamp(20px,8vw,140px)}.why-values-section{background:var(--panel);padding-top:clamp(42px,5vw,64px);padding-bottom:clamp(42px,5vw,64px)}.why-values-section .review-card{background:var(--ivory)}.service-card-detailed h2,.commitment-card h2,.project-card h2{margin:18px 0 10px;font-size:1.12rem}.project-gallery-modal{z-index:80;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.project-gallery-backdrop{cursor:pointer;background:#0a0a0ac7;border:0;position:absolute;inset:0}.project-gallery-panel{z-index:1;color:#fffdf8;background:#171717;border:1px solid #fffdf829;border-radius:8px;width:min(1120px,100%);max-height:min(900px,100vh - 44px);padding:clamp(18px,3vw,28px);position:relative;overflow:auto;box-shadow:0 24px 80px #0000006b}.project-gallery-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.project-gallery-header span{color:#fffdf89e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:800;display:block}.project-gallery-header h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,3rem);line-height:1}.project-gallery-close{color:#fffdf8;border-color:#fffdf838;flex:none}.project-gallery-groups{scrollbar-width:thin;gap:10px;margin:0 0 18px;padding-bottom:4px;display:flex;overflow-x:auto}.project-gallery-groups button{color:#fffdf8;cursor:pointer;background:#fffdf80f;border:1px solid #fffdf82e;border-radius:8px;gap:3px;min-width:116px;padding:10px 14px;display:grid}.project-gallery-groups button:hover,.project-gallery-groups button:focus-visible,.project-gallery-groups button.is-active{background:#d6b06f29;border-color:#d6b06feb;outline:none}.project-gallery-groups span{font-size:.86rem;font-weight:800}.project-gallery-groups small{color:#fffdf894;font-size:.72rem}.project-carousel{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;display:grid;position:relative}.project-carousel img{object-fit:contain;background:#0d0d0d;border-radius:8px;width:100%;max-height:min(62vh,620px)}.project-carousel-arrow{color:#fffdf8;cursor:pointer;background:#fffdf80f;border:1px solid #fffdf833;border-radius:999px;place-items:center;width:44px;height:44px;display:grid}.project-carousel-arrow:hover,.project-carousel-arrow:focus-visible{border-color:#d6b06fd1;outline:none}.project-gallery-count{color:#fffdf89e;text-align:center;margin-top:12px;font-size:.9rem}.project-gallery-thumbs{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:18px;display:flex}.project-gallery-thumbs button{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:6px;flex:0 0 108px;width:108px;height:76px;padding:0;overflow:hidden}.project-gallery-thumbs button.is-active,.project-gallery-thumbs button:hover,.project-gallery-thumbs button:focus-visible{border-color:#d6b06feb;outline:none}.project-gallery-thumbs img{object-fit:cover;width:100%;height:100%}.section-action{justify-content:flex-end;margin-top:28px;display:flex}.home-cta,.page-cta{padding:clamp(72px,9vw,116px) clamp(20px,8vw,140px)}.home-cta{background:var(--panel);margin-top:clamp(60px,8vw,100px)}.home-cta h2,.page-cta h2{max-width:850px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.home-cta>p:not(.eyebrow),.page-cta p{max-width:650px;color:var(--muted);margin:22px 0 28px;line-height:1.7}.page-cta{background:var(--panel)}.about-cta .primary-button{margin-top:28px}.projects-page .page-cta{background:var(--paper)}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.google-reviews-section{background:var(--paper);padding-top:clamp(54px,7vw,86px)}.reviews-intro{grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:end;gap:clamp(22px,4vw,42px);margin-bottom:14px;display:grid}.reviews-intro h2{max-width:760px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,5vw,4.8rem);line-height:.98}.reviews-intro p:not(.eyebrow){max-width:680px;color:var(--muted);line-height:1.7}.reviews-source-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:8px;padding:20px;display:grid}.reviews-source-card span,.reviews-source-card small{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:800}.reviews-source-card strong{color:var(--clay);align-items:center;gap:8px;font-size:1.2rem;display:flex}.google-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.google-review-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;align-content:start;min-height:230px;padding:22px;display:grid}.google-review-card h3{margin:18px 0 8px;font-size:1.05rem}.google-review-card p{color:var(--muted);margin:0;line-height:1.65}.review-skeleton{background:color-mix(in srgb, var(--muted) 18%, transparent);border-radius:999px;overflow:hidden}.review-skeleton-name{width:54%;height:12px;margin-bottom:14px}.review-skeleton-stars{color:var(--gold);gap:4px;display:flex}.quote-section{background:var(--panel);grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);gap:clamp(30px,6vw,80px);display:grid}.quote-form{box-shadow:var(--shadow);grid-template-columns:repeat(2,minmax(0,1fr));align-self:start;gap:16px;display:grid}.quote-form label{color:var(--nav-text);gap:8px;font-size:.86rem;font-weight:800;display:grid}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:48px;color:var(--ink);background:var(--field-bg);border:1px solid var(--line);border-radius:4px;outline:none;padding:12px 13px}.quote-form textarea{resize:vertical}.quote-page{min-height:calc(100vh - 78px);padding-top:clamp(56px,8vw,104px)}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--clay);box-shadow:0 0 0 3px #9b6f491f}.wide{grid-column:1/-1}.quote-form .primary-button{width:100%}.primary-button:disabled{color:var(--disabled-button-text);background:var(--disabled-button-bg);border-color:var(--disabled-button-bg);cursor:not-allowed;opacity:1}.scheduling-fieldset{border:1px solid var(--line);border-radius:4px;min-width:0;margin:4px 0 0;padding:20px}.scheduling-fieldset legend{align-items:center;gap:8px;padding:0 8px;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:700;display:flex}.date-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.date-option,.time-option{color:var(--ink);background:var(--control-bg);border:1px solid var(--control-border);cursor:pointer;border-radius:4px}.date-option{justify-items:center;gap:3px;min-height:82px;padding:10px 8px;display:grid}.date-option span,.date-option small{color:var(--muted);text-transform:uppercase;font-size:.72rem}.date-option strong{font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.date-option[aria-pressed=true],.time-option[aria-pressed=true]{color:var(--ivory);background:var(--ink);border-color:var(--ink)}.time-option:disabled{color:var(--disabled-text);background:var(--disabled-bg);border-color:var(--disabled-border);cursor:not-allowed;opacity:.72}.date-option[aria-pressed=true] span,.date-option[aria-pressed=true] small{color:var(--paper);opacity:.72}.date-option[data-closed=true]:not([aria-pressed=true]){color:var(--disabled-text);background:var(--disabled-bg)}.date-option:disabled{color:var(--disabled-text);background:var(--disabled-bg);border-color:var(--disabled-border);cursor:default;opacity:.68}.time-options{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;margin-top:14px;display:grid}.time-option{justify-content:center;align-items:center;gap:7px;min-height:44px;padding:8px 12px;font-weight:700;display:inline-flex}.availability-message{min-height:96px;color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:10px;display:flex}.availability-error{color:#8a3030;flex-direction:column}.compact-button{min-height:40px;padding-inline:16px}.quote-confirmation{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;align-self:start;padding:clamp(28px,5vw,46px)}.confirmation-icon{width:48px;height:48px;color:var(--ivory);background:var(--moss);border-radius:50%;place-items:center;margin-bottom:24px;display:grid}.quote-confirmation h3{max-width:520px;margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3rem);line-height:1.04}.quote-confirmation>p:not(.eyebrow){color:var(--muted);line-height:1.65}.confirmation-time{background:var(--control-bg);border:1px solid var(--line);border-radius:4px;grid-template-columns:auto 1fr;align-items:center;gap:10px 12px;margin:0 0 22px;padding:18px;font-weight:800;display:grid}.appointment-manage-page{min-height:70vh}.managed-appointment-summary{max-width:420px;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:auto 1fr;gap:10px 12px;margin-top:28px;padding:18px;display:grid}.danger-button{color:#8a3030;border-color:color-mix(in srgb, #8a3030 44%, var(--line))}.danger-button:hover,.danger-button:focus-visible{color:#fffdf8;background:#8a3030;border-color:#8a3030}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-status{color:#8a3030;grid-column:1/-1;min-height:22px;margin:0;font-size:.9rem}.admin-page{background:var(--paper);min-height:calc(100vh - 78px);padding:clamp(48px,6vw,82px) clamp(20px,5vw,72px)}.admin-login-page{place-items:start center;display:grid}.admin-login-card,.admin-dashboard-panel{background:var(--panel);border:1px solid var(--line);width:min(100%,1100px);box-shadow:var(--shadow);border-radius:8px;padding:clamp(24px,4vw,38px)}.admin-login-card{max-width:520px}.admin-lock-icon{width:48px;height:48px;color:var(--paper);background:var(--ink);border-radius:50%;place-items:center;margin-bottom:22px;display:grid}.admin-login-card h1,.admin-dashboard-header h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.98}.admin-login-card p,.admin-dashboard-header p{max-width:720px;color:var(--muted);line-height:1.65}.admin-login-form,.admin-editor-form{gap:14px;display:grid}.admin-login-form label,.admin-editor-form label{color:var(--nav-text);gap:8px;font-size:.86rem;font-weight:800;display:grid}.admin-login-form input,.admin-editor-form input,.admin-editor-form select{min-height:48px;color:var(--ink);background:var(--field-bg);border:1px solid var(--line);border-radius:4px;padding:12px 13px}.admin-alert,.admin-success{border-radius:6px;margin:14px 0;padding:12px 14px;line-height:1.5}.admin-alert{color:#8a3030;background:#8a30301f;border:1px solid #8a303047}.admin-success{color:var(--moss);background:color-mix(in srgb, var(--moss) 14%, transparent);border:1px solid color-mix(in srgb, var(--moss) 30%, transparent)}.admin-dashboard-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.admin-dashboard-panel{width:100%}.admin-panel-title,.admin-calendar-message{align-items:center;gap:10px;display:flex}.admin-panel-title{color:var(--clay);margin-bottom:18px}.admin-panel-title h2,.admin-calendar-toolbar h3,.admin-editor-header h3{margin:0}.admin-calendar-toolbar{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:16px;display:grid}.admin-calendar-toolbar h3{text-align:center;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.4rem,3vw,2.2rem)}.admin-calendar-message{min-height:120px;color:var(--muted);justify-content:center}.admin-calendar-grid{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.admin-calendar-weekday{color:var(--clay);background:var(--panel);text-align:center;text-transform:uppercase;padding:10px;font-size:.76rem;font-weight:900}.admin-calendar-day{background:var(--ivory);min-height:132px;padding:10px}.admin-calendar-day[data-muted=true]{background:color-mix(in srgb, var(--ivory) 70%, var(--paper));opacity:.62}.admin-calendar-date{width:28px;height:28px;color:var(--muted);border:1px solid var(--line);border-radius:999px;justify-content:center;align-items:center;margin-bottom:8px;font-weight:800;display:inline-flex}.admin-calendar-events{gap:6px;display:grid}.admin-calendar-event{width:100%;color:var(--ink);background:color-mix(in srgb, #d6a92f 30%, var(--panel));cursor:pointer;text-align:left;border:1px solid #d6a92fb3;border-radius:6px;gap:2px;padding:8px;display:grid}.admin-calendar-event:hover,.admin-calendar-event:focus-visible{border-color:var(--gold);outline:none;box-shadow:0 8px 20px #1717171f}.admin-calendar-event span{color:var(--muted);font-size:.72rem;font-weight:800}.admin-calendar-event strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.admin-calendar-event[data-status=cancelled]{opacity:.52;text-decoration:line-through}.admin-calendar-event[data-status=confirmed]{background:color-mix(in srgb, #3f78a8 32%, var(--panel));border-color:#3f78a8b8}.admin-calendar-event[data-status=completed]{background:color-mix(in srgb, #4d8f58 34%, var(--panel));border-color:#4d8f58c2}.admin-calendar-event[data-status=pending]{background:color-mix(in srgb, #d6a92f 30%, var(--panel));border-color:#d6a92fb3}.admin-editor-backdrop{z-index:90;background:#0a0a0aa3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-editor{width:min(620px,100%);max-height:calc(100vh - 40px);color:var(--ink);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:clamp(20px,4vw,30px);overflow:auto}.admin-editor-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.admin-editor-header h3{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,3rem);line-height:1}.admin-editor-header p:not(.eyebrow){color:var(--muted);margin:10px 0 0}.admin-contact-card{color:var(--muted);background:var(--field-bg);border:1px solid var(--line);border-radius:6px;gap:8px;margin-bottom:16px;padding:14px;display:grid}.admin-editor-message{color:var(--muted);background:var(--ivory);border-left:3px solid var(--clay);margin:0 0 16px;padding:14px;line-height:1.6}.admin-editor-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-editor-actions{flex-wrap:wrap;grid-column:1/-1;gap:10px;margin-top:4px;display:flex}.admin-save-button{position:relative;overflow:hidden}.admin-save-button:not(:disabled):hover,.admin-save-button:not(:disabled):focus-visible{transform:translateY(-1px);box-shadow:0 12px 26px #17171729}.admin-save-button[data-saving=true]{animation:.9s ease-in-out infinite admin-save-pulse}@keyframes admin-save-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--clay) 28%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--clay) 0%, transparent)}}.site-footer{color:#fffdf8;background:#171717;grid-template-columns:minmax(180px,1fr) minmax(260px,auto) minmax(180px,1fr);align-items:center;gap:24px;padding:34px clamp(20px,5vw,72px);display:grid}.site-footer img{width:110px;height:auto}.site-footer>div:first-child{text-align:left;flex-direction:column;justify-self:start;align-items:flex-start;display:flex}.site-footer p{color:#fffdf8a8;margin:6px 0 0}.footer-contact{color:#fffdf8d1;text-align:center;justify-self:center;justify-items:center;gap:10px;display:grid}.footer-contact h2{color:#fffdf8;text-transform:uppercase;margin:0 0 4px;font-size:.82rem}.footer-contact a,.footer-contact span{justify-content:center;align-items:center;gap:10px;display:flex}.footer-credit{color:#fffdf8d1;text-align:right;justify-self:end;margin:0}@media (max-width:980px){.site-header{flex-wrap:wrap}.desktop-nav{scrollbar-width:none;order:3;width:100%;padding-top:2px;padding-bottom:2px;overflow-x:auto}.desktop-nav::-webkit-scrollbar{display:none}.hero,.split-section,.quote-section{grid-template-columns:1fr}.hero{min-height:auto}.hero-visual{min-height:460px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid,.review-grid,.google-review-grid,.reviews-intro{grid-template-columns:1fr}}@media (max-width:680px){.site-header{min-height:68px;padding:10px 16px}.desktop-nav{gap:20px;padding-top:2px;padding-bottom:2px;font-size:.86rem}.desktop-nav a{flex:none;margin-block:0;padding:8px 13px}.desktop-nav a:after{bottom:4px;left:15px;right:15px}.brand span{max-width:120px}.brand img{width:48px}.hero{padding:36px 16px 28px}.hero h1{font-size:4.05rem}.hero-visual{min-height:360px}.stats-band,.process-band{grid-template-columns:1fr;margin-inline:16px}.section,.split-section,.quote-section,.page-intro,.home-cta,.page-cta{padding:62px 16px}.service-grid,.quote-form{grid-template-columns:1fr}.project-gallery-modal{padding:10px}.project-gallery-panel{max-height:calc(100vh - 20px)}.project-carousel{grid-template-columns:1fr}.project-carousel img{max-height:58vh}.project-carousel-arrow{background:#111111ad;position:absolute;top:50%}.project-carousel-arrow:first-child{left:18px}.project-carousel-arrow:last-child{right:18px}.scheduling-fieldset{padding:16px 12px}.date-options{scroll-snap-type:x mandatory;padding-bottom:6px;display:flex;overflow-x:auto}.date-option{scroll-snap-align:start;flex:0 0 70px}.time-options{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{text-align:center;grid-template-columns:1fr;align-items:center;gap:22px;padding:28px 24px}.site-footer>div:first-child{justify-self:center;align-items:center;width:100%}.site-footer img{width:88px}.footer-credit{text-align:center;justify-self:center;width:100%}.footer-contact{justify-self:center;justify-items:center;gap:8px;width:min(100%,340px);font-size:.92rem}.footer-contact h2{margin-bottom:2px}.footer-contact a,.footer-contact span{text-align:center;overflow-wrap:anywhere;justify-content:center;max-width:100%}.footer-credit{font-size:.9rem}.floating-whatsapp{right:16px;bottom:calc(82px + env(safe-area-inset-bottom));width:54px;height:54px}.ambiance-player{right:16px;bottom:calc(18px + env(safe-area-inset-bottom))}.ambiance-button{gap:0;width:54px;height:54px;min-height:54px;padding:0;font-size:0;overflow:hidden;box-shadow:0 12px 30px #0000003d}.ambiance-button svg{flex:none}.admin-dashboard-header,.admin-calendar-toolbar{grid-template-columns:1fr}.admin-dashboard-header{display:grid}.admin-calendar-grid{scroll-snap-type:x mandatory;gap:1px;display:flex;overflow-x:auto}.admin-calendar-weekday{display:none}.admin-calendar-day{scroll-snap-align:start;flex:0 0 180px}.admin-editor-form{grid-template-columns:1fr}}
