
:root{--bg:#F0EFF5;--bg-alt:#F0EBEA;--surface:#FFFFFF;--surface-strong:#D9D7E5;--primary:#332871;--secondary:#98503E;--accent:#BD9332;--text:#171521;--muted:#464356;--border:#C1BECF;--success:#358255;--on-primary:#fff;--radius-sm:9px;--radius-lg:18px;--container:1100px;--border-width:1px;--heading:"Trebuchet MS", "Segoe UI", sans-serif;--body:Bodoni 72, Didot, Georgia, serif;--hero-bg:#F0EBEA;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{position:fixed;left:12px;top:-60px;z-index:1000;background:var(--text);color:var(--bg);padding:10px 16px}.skip-link:focus{top:12px}.page-shell{min-height:100vh}.site-header{position:relative;z-index:50;background:var(--surface);border-bottom:1px solid var(--border)}.header-inner{max-width:var(--container);margin:auto;padding:16px clamp(18px,4vw,52px);display:flex;align-items:center;gap:28px}.brand-link{display:flex;align-items:center;gap:12px;min-width:0}.brand-link img{width:min(320px,36vw);height:auto}.brand-mark{display:none;width:46px!important}.site-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(12px,2vw,26px);font-size:.9rem}.site-nav a{padding:8px 0;border-bottom:2px solid transparent}.site-nav a:hover{border-color:var(--accent)}.menu-toggle{display:none;margin-left:auto;background:var(--surface);border:1px solid var(--border);padding:10px 14px}.hero{background:var(--hero-bg);padding:clamp(62px,10vw,148px) clamp(18px,4vw,52px)}.hero-grid{max-width:var(--container);margin:auto;display:grid;gap:clamp(30px,6vw,90px);align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);font-weight:700}.eyebrow:before{content:'';width:34px;height:2px;background:var(--accent)}h1,h2,h3{font-family:var(--heading);line-height:1.04;margin:0 0 .55em;letter-spacing:0.06em}h1{font-size:clamp(3rem, 8vw, 8.2rem);font-weight:650;max-width:18ch}h2{font-size:clamp(2rem,4vw,4.5rem)}h3{font-size:clamp(1.2rem,2vw,1.7rem)}p{margin:0 0 1em}.hero-lead{font-size:clamp(1.05rem,1.7vw,1.35rem);max-width:62ch;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;font-weight:700;transition:transform .18s ease,background .18s ease,border-color .18s ease}.button:hover{transform:translateY(-2px)}.button-secondary{background:transparent;border:1px solid var(--border);color:var(--text)}.hero-art{position:relative}.scene-img{width:100%;height:auto;border-radius:var(--radius-lg)}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.tag{padding:7px 11px;border:1px solid var(--border);border-radius:999px;font-size:.8rem;background:color-mix(in srgb,var(--surface) 85%,transparent)}.section{padding:clamp(58px,9vw,132px) clamp(18px,4vw,52px);position:relative}.section:nth-of-type(even){background:var(--bg-alt)}.section-inner{max-width:var(--container);margin:auto}.section-heading{margin-bottom:34px}.section-kicker{color:var(--primary);font-weight:700;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.section-lead{max-width:68ch;color:var(--muted);font-size:1.05rem}.section-body{min-width:0}.service-grid,.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(14px,2vw,28px)}.service-card,.info-card{background:var(--surface);border-radius:var(--radius-lg);padding:clamp(22px,3vw,36px);position:relative;overflow:hidden}.card-index{font-family:var(--heading);font-size:2.4rem;color:var(--primary);opacity:.35}.card-icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid currentColor;margin-bottom:18px}.card-icon svg{width:30px;height:30px}.process-list{display:grid;gap:0;counter-reset:steps}.process-item{display:grid;grid-template-columns:72px 1fr;gap:22px;padding:24px 0;border-bottom:1px solid var(--border);counter-increment:steps}.process-item:before{content:counter(steps,decimal-leading-zero);font-family:var(--heading);font-size:2rem;color:var(--primary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.stat{padding:24px;border-top:4px solid var(--accent);background:var(--surface)}.stat strong{display:block;font:700 2.6rem/1 var(--heading);color:var(--primary)}.request-form{gap:16px;max-width:860px}.field{display:grid;gap:7px}.field label{font-weight:700;font-size:.9rem}.field input,.field textarea,.field select{width:100%;padding:14px 15px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm)}.field textarea{min-height:130px;resize:vertical}.form-note{grid-column:1/-1;color:var(--muted);font-size:.88rem}.form-status{grid-column:1/-1;padding:14px 16px;background:color-mix(in srgb,var(--success) 15%,var(--surface));border-left:4px solid var(--success);display:none}.form-status.visible{display:block}.faq-list{display:grid;gap:12px}details{background:var(--surface);border:1px solid var(--border);padding:18px 20px;border-radius:var(--radius-sm)}summary{cursor:pointer;font-weight:700}details p{margin-top:14px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.gallery-grid figure{margin:0}figcaption{font-size:.82rem;color:var(--muted);margin-top:8px}.site-footer{padding:clamp(46px,8vw,110px) clamp(18px,4vw,52px);background:var(--text);color:var(--bg)}.footer-inner{max-width:var(--container);margin:auto;display:grid;grid-template-columns:repeat(5,1fr);gap:32px}.footer-brand img{max-width:260px;filter:brightness(0) invert(1)}.footer-nav{display:grid;gap:9px}.legal-note{font-size:.84rem;opacity:.78;max-width:64ch}.page-hero{padding:clamp(54px,8vw,110px) clamp(18px,4vw,52px);background:var(--bg-alt)}.page-hero-inner{max-width:var(--container);margin:auto}.page-content{padding:clamp(50px,8vw,100px) clamp(18px,4vw,52px)}.page-content-inner{max-width:var(--container);margin:auto}.notice{padding:20px;border-left:5px solid var(--primary);background:var(--surface);margin:24px 0}.check-list{display:grid;gap:12px;list-style:none;padding:0}.check-list li{padding:12px 0;border-bottom:1px solid var(--border)}.check-list li:before{content:'✓';color:var(--success);font-weight:700;margin-right:12px}.site-index{font-size:.78rem;letter-spacing:.1em;color:var(--muted)}
.hero-grid{grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr)}.service-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.service-card{min-height:210px}.section:nth-child(3n) .section-inner{max-width:980px}.service-card,.info-card{clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%);border:1px solid var(--border);}.button,.button-primary{background:linear-gradient(90deg,var(--primary) 0 72%,var(--secondary) 72%);color:var(--on-primary);border:0;}.request-form{display:grid;grid-template-columns:1fr;}.faq-list{}
@media (max-width:900px){body{padding:0}.page-shell{display:block!important;border-radius:0!important}.site-header{position:sticky!important;top:0!important;min-height:0!important}.header-inner{min-height:0!important}.brand-link img:not(.brand-mark){display:none}.brand-mark{display:block!important}.menu-toggle{display:block}.site-nav{position:fixed;inset:72px 0 auto 0;background:var(--surface);padding:24px;display:none!important;flex-direction:column!important;align-items:stretch!important;border-bottom:1px solid var(--border);max-height:calc(100vh - 72px);overflow:auto}.site-nav.open{display:flex!important}.hero-grid,.section-inner{display:block!important}.hero-copy,.hero-art{min-height:0!important}.hero-art{margin-top:32px}.section-heading{position:static!important}.service-grid,.cards-grid,.gallery-grid,.footer-inner{grid-template-columns:1fr!important}.request-form{grid-template-columns:1fr!important}.footer-inner{display:grid}.site-footer{padding-bottom:90px}h1{font-size:clamp(2.35rem,12vw,4.4rem)!important}.hero{padding-top:58px}.section{border-radius:0!important;margin:0!important}.process-item{grid-template-columns:52px 1fr}.faq-list{grid-template-columns:1fr!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
