@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
:root{--navy:#0c2740;--deep:#07192c;--red:#a72f35;--gold:#dcb46b;--paper:#f5efe3;--ink:#182b3a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit}button{font:inherit}.utility{background:#9b3037;color:#fff1db;min-height:32px;display:flex;align-items:center;justify-content:space-between;padding:6px max(5%,calc((100vw - 1200px)/2));font-size:10px;letter-spacing:2px;font-weight:800}.header{background:#faf7ef;min-height:112px;display:flex;align-items:center;justify-content:space-between;padding:8px max(5%,calc((100vw - 1200px)/2));position:relative;z-index:10;border-bottom:2px solid #d6bb83}.logo-link img{width:315px;max-width:100%;height:auto;display:block}.header nav{display:flex;align-items:center;gap:31px}.header nav a{text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.7px}.header nav a:hover{color:var(--red)}.header nav .nav-call{background:var(--navy);color:white;padding:16px 20px;border:1px solid var(--gold)}.menu-toggle{display:none}.hero{min-height:655px;display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 45%,#254967 0%,#102c48 42%,#071b30 85%);color:#fff}.hero:before{content:'';position:absolute;inset:0;opacity:.12;background:repeating-linear-gradient(90deg,transparent 0 90px,#b89b6d 91px,transparent 92px)}.hero-glow{position:absolute;inset:0;background:linear-gradient(110deg,#061728aa,transparent 70%);pointer-events:none}.hero-copy{position:relative;z-index:1;padding:112px 20px 70px max(8%,calc((100vw - 1200px)/2));}.overline,.kicker{font-size:11px;letter-spacing:2.8px;font-weight:800;color:#bc8c45}.overline{color:#e2bc7b}.hero h1,h2{font-family:'Libre Baskerville',Georgia,serif;letter-spacing:-2px;font-weight:400}.hero h1{font-size:clamp(44px,5.2vw,76px);line-height:1.2;margin:26px 0}.hero h1 em,h2 em{color:var(--gold);font-weight:400}.hero-lead{font-size:17px;line-height:1.85;max-width:540px;color:#d8e2e9}.actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;padding:18px 23px;font-weight:800;font-size:12px;letter-spacing:.7px;transition:transform .2s}.btn:hover{transform:translateY(-3px)}.btn.gold{background:linear-gradient(135deg,#f3d18a,#d3a251);color:#14253a}.btn.ghost{border:1px solid #c6a870;color:#fff}.btn.dark{background:var(--navy);color:#fff}.small-hero{margin-top:77px;color:#b7c2cb;font-size:10px;letter-spacing:2.5px}.small-hero span{color:var(--gold);margin:0 12px}.hero-visual{display:grid;place-items:center;position:relative;min-height:600px}.hero-visual .emblem{width:min(75%,465px);position:relative;z-index:2;filter:drop-shadow(0 25px 25px #020b16a8)}.orbit{border:1px solid #caa86866;position:absolute;border-radius:50%;aspect-ratio:1}.orbit.one{width:540px;max-width:95%}.orbit.two{width:410px;max-width:76%}.hero-stamp{position:absolute;bottom:55px;color:#e1c18d;font-size:10px;letter-spacing:2px;line-height:1.8;text-align:center}.ticker{background:#aa343b;color:#fff2e2;min-height:61px;display:flex;align-items:center;justify-content:space-evenly;gap:12px;letter-spacing:2.5px;font-size:11px;font-weight:800}.ticker span{color:#f6dba3}.wrap{max-width:1200px;margin:auto;padding:110px 32px}.story{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px;align-items:center}.story-art{padding:18px;background:#e4d8c5;position:relative}.grain{height:435px;border:10px solid #61442c;background:repeating-linear-gradient(90deg,#67432c 0 42px,#765037 44px 46px,#81583a 47px 96px,#67432c 98px 100px);box-shadow:inset 0 0 100px #24150b9c;display:flex;align-items:center;flex-direction:column;justify-content:space-between;padding:28px 15px;color:#f9e5ba;text-align:center}.tiny,.grain-foot{font-size:10px;letter-spacing:2.4px}.workshop-symbol{font-size:88px;color:#e5c58b;text-shadow:3px 5px #33241b}.grain strong{font:26px/1.55 Georgia,serif}.grain strong i{color:#f6d89e}.corner-label{position:absolute;right:-16px;bottom:30px;background:#a6343b;color:white;font-size:9px;letter-spacing:2px;padding:14px}.story h2,.section-heading h2,.contact h2{font-size:clamp(35px,4vw,53px);line-height:1.33;margin:16px 0 25px}.story h2 em,.section-heading h2 em,.contact h2 em{color:#ac7d3a}.rule{height:2px;width:60px;background:#b89557;margin:25px 0}.story p:not(.kicker),.section-heading>p,.contact>div>p:not(.kicker){font-size:15px;line-height:2;color:#5d666b}.inline-link{display:inline-block;margin-top:18px;padding-bottom:10px;border-bottom:2px solid #b99a5d;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:1px}.inline-link span{margin-left:12px}.services{background:#e8dfd0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px}.section-heading>p{max-width:360px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.card{background:#fbf7ee;min-height:330px;border-top:4px solid #c69b55;padding:27px 23px;display:flex;flex-direction:column;box-shadow:0 10px 22px #34220d0b;transition:transform .2s}.card:hover{transform:translateY(-5px)}.num{font-size:11px;letter-spacing:2px;color:#8d8170}.card-icon{font-size:43px;color:#aa3a3c;margin:26px 0 12px}.card h3{font:20px/1.4 Georgia,serif;margin:0 0 12px}.card p{font-size:13px;line-height:1.9;color:#60666a;margin:0}.card-bottom{font-size:9px;letter-spacing:1.4px;color:#a43b3e;font-weight:800;margin-top:auto;padding-top:28px}.service-note{text-align:center;margin:38px 0 0;font-size:14px}.service-note a{font-weight:800;color:#a3353c}.landscape{background:linear-gradient(90deg,#091d32ed,#0d2846a8 65%,#091d3244),url('assets/desert-banner.webp') center 54%/cover;min-height:380px;color:white;display:grid;align-items:center}.landscape-inner{width:min(1140px,90%);margin:auto;padding:65px 0}.landscape .kicker{color:#f6ce8a}.landscape h2{font-size:clamp(38px,5vw,61px);margin:15px 0}.landscape p:last-child{font-size:16px;color:#f6e9d7}.work .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:35px}.tile{height:290px;padding:25px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.tile:before{content:'';position:absolute;inset:0;opacity:.15;background:repeating-linear-gradient(45deg,transparent 0 18px,white 19px,transparent 20px)}.tile.wood{background:linear-gradient(140deg,#50301d,#a87542)}.tile.electrical{background:linear-gradient(140deg,#0a1e31,#3978a4)}.tile.home{background:linear-gradient(140deg,#554f42,#a7a08b)}.tile>*{position:relative}.tile span{position:absolute;top:23px;font-size:10px;letter-spacing:2px}.tile strong{font:25px Georgia,serif}.tile small{font-size:9px;letter-spacing:2px;margin-top:12px}.promise{background:#a3323a;color:white;text-align:center;padding:72px 25px}.promise p{font-size:11px;letter-spacing:3px;color:#f2c988}.promise h2{font-size:clamp(30px,4vw,49px);line-height:1.4}.promise h2 em{color:#f4dba6}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.contact-panel{background:#0d2844;padding:35px 42px 42px;color:#fff8e8;box-shadow:15px 15px #d9c9ad}.contact-panel img{width:100%;max-width:385px}.panel-rule{height:1px;background:#a58b61;margin:18px 0 30px}.contact-panel small{display:block;color:#e2b970;letter-spacing:2px;font-size:10px;margin-top:25px}.contact-panel .phone{display:block;font:29px Georgia,serif;text-decoration:none;margin-top:12px}.contact-panel p{line-height:1.9;font-size:14px}footer{background:#071829;color:#f3ede1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:40px max(5%,calc((100vw - 1200px)/2))}footer img{width:75px}footer strong{font:14px Georgia,serif}footer p{font:italic 13px Georgia,serif;color:#c7ad7f}footer small{font-size:10px;color:#b1b9c0}.menu-toggle{cursor:pointer}@media(max-width:1000px){.header nav{gap:15px}.logo-link img{width:245px}.hero-copy{padding-left:6%}.story,.contact{gap:45px}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.utility{justify-content:center;text-align:center}.utility span:last-child{display:none}.header{min-height:83px}.logo-link img{width:210px}.menu-toggle{display:block;border:0;background:none;color:var(--navy);font-weight:800}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#faf7ef;flex-direction:column;align-items:stretch;padding:20px 6%;box-shadow:0 10px 18px #0002}.header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 7% 25px}.hero-visual{min-height:350px}.hero-visual .emblem{width:270px}.orbit.one{width:320px}.orbit.two{width:245px}.hero-stamp{bottom:15px}.small-hero{margin-top:45px;line-height:2}.ticker{flex-wrap:wrap;padding:15px;font-size:9px;letter-spacing:1px}.wrap{padding:70px 24px}.story,.contact{grid-template-columns:1fr}.story-art{max-width:470px}.section-heading{display:block}.cards{grid-template-columns:1fr}.card{min-height:250px}.landscape{min-height:320px}.work .gallery{grid-template-columns:1fr}.tile{height:220px}.contact-panel{padding:28px}.contact-panel .phone{font-size:24px}footer{flex-direction:column;text-align:center}.grain{height:340px}.workshop-symbol{font-size:64px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Service request form */
.contact{align-items:start}.request-card{margin-top:40px;padding:30px;background:#fffaf0;border:1px solid #dac8a7;border-top:4px solid #bd914d;box-shadow:0 12px 28px #34220d12}.request-eyebrow{font-size:10px!important;font-weight:800;letter-spacing:2px;color:#a57a3d!important;line-height:1.5!important;margin:0 0 10px}.request-card h3{font:26px/1.35 'Libre Baskerville',Georgia,serif;margin:0 0 10px;color:var(--navy)}.request-intro{font-size:14px!important;line-height:1.7!important;color:#5d666b;margin:0 0 24px}.request-card form{display:flex;flex-direction:column}.request-card label{font-size:12px;font-weight:800;color:var(--navy);margin:0 0 8px}.request-card label span{color:#a3323a}.request-card input:not([type=checkbox]),.request-card textarea{width:100%;border:1px solid #c9bca7;border-radius:0;background:white;color:var(--ink);font:15px/1.5 'DM Sans',Arial,sans-serif;padding:13px 14px;margin-bottom:19px}.request-card textarea{resize:vertical;min-height:120px}.request-card input:focus-visible,.request-card textarea:focus-visible{outline:2px solid #a77b3d;outline-offset:2px}.request-submit{border:0;cursor:pointer;align-self:flex-start}.request-submit:disabled{opacity:.65;cursor:wait;transform:none}.request-status{margin:14px 0 0!important;font-size:14px!important;line-height:1.6!important}.request-status:empty{display:none}.request-status.success{color:#20653f!important}.request-status.error{color:#9a2833!important}.request-privacy{font-size:11px!important;line-height:1.6!important;margin:14px 0 0;color:#687078!important}.form-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}@media(max-width:720px){.request-card{padding:24px 20px}.request-submit{width:100%}}

/* Form layout reinforcement and browser-safe stacking */
.contact > div { min-width:0; }
.request-card { width:100%; min-width:0; }
#service-request-form { display:grid; grid-template-columns:minmax(0,1fr); gap:0; width:100%; }
#service-request-form > label { display:block; width:100%; margin:0 0 8px; }
#service-request-form > input:not([type="hidden"]):not([type="checkbox"]),
#service-request-form > textarea { display:block; width:100%; max-width:100%; min-width:0; margin:0 0 20px; }
#service-request-form > .form-honeypot { display:none!important; }
#service-request-form > .request-submit { justify-self:start; }
@media(max-width:720px) { #service-request-form > .request-submit { justify-self:stretch; } }
