
@font-face{font-family:Manrope;src:url('/assets/manrope-bold.woff') format('woff');font-weight:700;font-display:swap}@font-face{font-family:'DM Sans';src:url('/assets/dm-sans-regular.woff') format('woff');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#0f1110;--surface:#181c18;--raised:#22281f;--cream:#f2ecdf;--muted:#b7beae;--brass:#c7a675;--line:#3a4535;--control:#849474;--focus:#dfbd82;--error:#ffb4a9;--success:#b8d6a2;--body:'DM Sans',Arial,sans-serif;--heading:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:#080a08;color:var(--cream);font-family:var(--body);line-height:1.65;font-size:16px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:3px}button:disabled{opacity:.48;cursor:not-allowed}[hidden]{display:none!important}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--heading);font-weight:700;line-height:1.14}h1{font-size:clamp(2.6rem,6.3vw,5.4rem);letter-spacing:-.055em;line-height:1.06}h2{font-size:clamp(1.9rem,3.8vw,3rem);letter-spacing:-.04em}h3{font-size:1.25rem;letter-spacing:-.025em}p{color:var(--muted)}.wrap{width:min(100% - 80px,1168px);margin-inline:auto}.eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:500;text-transform:uppercase;color:var(--brass)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:52px;padding:12px 22px;border:1px solid var(--cream);border-radius:6px;background:var(--cream);color:#141810;font-weight:500;font-size:.9375rem;transition:background .14s,transform .14s}.button:hover{background:#fff8e9;transform:translateY(-2px)}.button:active{transform:translateY(1px) scale(.99)}.button.secondary{background:transparent;color:var(--cream);border-color:var(--control)}.button.secondary:hover{background:var(--raised)}.text-button{background:none;border:0;padding:10px 0;min-height:44px;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}.small{font-size:.875rem;line-height:1.6}.muted{color:var(--muted)}.chip{display:inline-block;border:1px solid var(--line);border-radius:99px;padding:6px 11px;font-size:.75rem;color:var(--muted)}.section{padding-block:80px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:32px}.section-head .eyebrow{margin-bottom:12px}.section-head>p{font-size:.9375rem;max-width:340px}.rule{border:0;border-top:1px solid var(--line);margin:0}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.review-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 28px;background:#22271c;border-bottom:1px solid #62704e;font-size:.8125rem;flex-wrap:wrap}.review-bar strong{font-family:var(--heading);color:var(--cream);margin-right:12px}.review-bar span{color:#c7d2b5}.device-controls{display:flex;gap:6px}.device-controls button{background:transparent;border:1px solid #657353;border-radius:4px;min-height:38px;padding:6px 13px;font-size:.8125rem}.device-controls button[aria-pressed=true]{background:var(--cream);color:#141810;border-color:var(--cream)}.preview-frame{max-width:1440px;margin-inline:auto;background:var(--bg);transition:max-width .2s;border-inline:1px solid #252c22}.preview-frame.phone{max-width:700px}.site-header{position:sticky;top:0;z-index:30;height:88px;background:#0f1110ed;border-bottom:1px solid transparent;backdrop-filter:blur(12px);transition:background .18s,border-color .18s}.site-header.is-scrolled{background:#0f1110fa;border-color:var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;padding:0}.brand img{width:100px;object-fit:contain;filter:invert(1);height:auto;aspect-ratio:2/1;object-fit:contain;flex-shrink:0}.wordmark{font-family:var(--heading);font-size:1rem;line-height:1.15;letter-spacing:.02em;text-align:left}.wordmark small{display:block;font-family:var(--body);font-size:.625rem;letter-spacing:.28em;margin-top:5px;color:var(--muted)}.site-nav{display:flex;align-items:center;gap:24px}.nav-page{background:none;border:0;padding:10px 0;min-height:44px;font-size:.875rem;color:var(--muted)}.nav-page[aria-current=page]{color:var(--cream)}.site-nav .button{font-size:.8125rem;padding:10px 17px;min-height:44px;gap:18px}.menu-button{display:none;min-height:44px;min-width:48px;background:none;border:1px solid var(--control);border-radius:5px;font-size:.875rem}.hero{position:relative;isolation:isolate;padding:48px 0 64px;overflow:hidden}.hero:before,.closing:before{content:'';position:absolute;inset:0;z-index:-1;background:url('/assets/premium-bayou.webp') center/100% 100% no-repeat;opacity:.12;pointer-events:none;mask-image:linear-gradient(to right,#000,transparent 29%,transparent 71%,#000)}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:48px;align-items:center}.hero .eyebrow{font-size:.6875rem;letter-spacing:.17em;margin-bottom:24px}.hero h1 span{color:var(--brass)}.hero-copy>p{font-size:1rem;max-width:405px;margin-top:24px;line-height:1.8}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-note{font-size:.75rem!important;margin-top:20px!important;color:#b9c2af;max-width:440px!important}.hero-photo{position:relative;min-height:490px;isolation:isolate;border-radius:8px;overflow:hidden;border:1px solid #4b5541;background:#22281f}.hero-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 44%}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0001 35%,#0d130ee6 100%);z-index:1}.photo-top{position:absolute;left:20px;right:20px;top:20px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px}.photo-top .chip{background:#10140edb;color:#ede6d6;border-color:#9aa58b;font-size:.6875rem}.photo-caption{position:absolute;bottom:24px;left:24px;right:24px;z-index:2}.photo-caption strong{font-family:var(--heading);font-size:1.5rem;letter-spacing:-.025em}.photo-caption p{font-size:.8125rem;margin-top:7px;color:#d8ddce}.factual-strip{border-block:1px solid var(--line);background:#141813}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:22px}.fact-grid strong{font-size:.875rem;font-weight:500;display:block}.fact-grid span{font-size:.75rem;color:var(--muted)}.section.tint{background:#141813;border-block:1px solid var(--line)}.comparison-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}.comparison-copy h2{margin-top:16px;margin-bottom:20px}.comparison-copy p{max-width:390px}.comparison-copy .small{margin-top:18px}.comparison{margin:0;--pos:50%;position:relative;aspect-ratio:4/3;border:1px solid #657253;overflow:hidden;border-radius:8px;background:#1a2116}.comparison>img,.comparison .before-layer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.comparison .before-layer{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}.comparison-label{position:absolute;top:16px;left:16px;z-index:2;font-size:.75rem;letter-spacing:.08em;padding:6px 10px;background:#0f1110e8;border:1px solid #82916e;border-radius:4px}.comparison-label.after{left:auto;right:16px}.comparison .before-layer .slot-word{left:28px}.slot-word{position:absolute;left:auto;right:26px;bottom:28px;z-index:1;font-family:var(--heading);font-size:1.4rem;line-height:1.2;color:#fff;background:#10140fe8;padding:10px 14px;border-radius:4px}.comparison-line{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:var(--cream);box-shadow:0 0 0 1px #121510}.comparison-line:after{content:'↔';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border:1px solid #151913;border-radius:50%;display:grid;place-items:center;background:var(--cream);color:#151913;font-size:22px}.range-label{display:flex;justify-content:space-between;gap:12px;font-size:.875rem;margin-top:14px}.comparison-range{width:100%;height:48px;accent-color:var(--cream);margin:0;touch-action:pan-y}.comparison-actions{display:flex;justify-content:space-between;gap:16px}.comparison-actions button{min-height:44px;border:1px solid var(--control);background:none;border-radius:5px;padding:8px 12px;font-size:.8125rem}.demo-note{font-size:.75rem;color:var(--muted);margin-top:10px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package-card{position:relative;display:flex;flex-direction:column;background:linear-gradient(150deg,#23291e5c,transparent 75%),var(--surface);border:1px solid var(--line);border-radius:8px;padding:28px 24px;transition:border-color .16s,transform .16s}.package-card.featured{border-color:#a89670}.package-card .eyebrow{font-size:.625rem;letter-spacing:.1em;color:var(--muted);margin-bottom:15px}.package-card h3{font-size:1.3rem}.package-price{display:flex;align-items:baseline;gap:8px;margin-top:20px}.package-price strong{font-family:var(--heading);font-size:2.5rem;letter-spacing:-.04em}.package-price span{font-size:.8125rem;color:var(--muted)}.package-description{font-size:.875rem;min-height:48px;margin-top:10px}.package-card ul{list-style:none;margin:24px 0;padding:0;font-size:.875rem;color:#d1d7c7}.package-card li{padding-left:20px;position:relative;margin-top:9px}.package-card li:before{content:'✓';position:absolute;left:0;color:var(--brass)}.package-card .button{margin-top:auto;width:100%;gap:14px;font-size:.875rem}.package-note{font-size:.75rem;margin:14px 0 24px}.inline-select{display:flex;gap:12px;align-items:center;margin-bottom:24px;flex-wrap:wrap}.inline-select label{font-size:.875rem}.inline-select select{min-height:44px;background:var(--raised);color:var(--cream);border:1px solid var(--control);border-radius:6px;padding:8px 32px 8px 12px;font-size:1rem}.builder-grid{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:40px;align-items:start}.step-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;border-bottom:1px solid var(--line);margin-bottom:32px}.step-nav button{text-align:left;min-height:54px;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:.875rem;padding:0 0 12px}.step-nav button span{display:block;font-size:.625rem;letter-spacing:.1em;margin-bottom:5px}.step-nav button[aria-current=step]{color:var(--cream);border-color:var(--cream)}.stage h3{font-size:1.5rem;margin-bottom:12px}.stage>.small{margin-bottom:24px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice{display:block;padding:18px 18px;background:var(--surface);border:1px solid var(--control);border-radius:6px;cursor:pointer;position:relative;min-height:112px}.choice:has(input:checked){border-color:var(--cream);background:var(--raised);box-shadow:inset 0 0 0 1px var(--cream)}.choice input{accent-color:var(--cream);position:absolute;right:16px;top:16px;width:18px;height:18px}.choice strong{display:block;font-size:.9375rem;padding-right:20px}.choice small{display:block;font-size:.8125rem;color:var(--muted);margin-top:8px}.field-label{display:block;font-size:.875rem;margin:22px 0 8px}.optional{color:var(--muted);font-size:.75rem;margin-left:8px}.field{display:block;min-height:50px;width:100%;background:var(--surface);color:var(--cream);border:1px solid var(--control);border-radius:5px;padding:12px 14px;font-size:1rem}.field::placeholder{color:#aeb8a0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stage-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding-top:24px;margin-top:32px}.stage-actions .button{font-size:.875rem;gap:18px}.package-radio{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--control);border-radius:5px;background:var(--surface);padding:18px;margin-top:12px;cursor:pointer}.package-radio:has(input:checked){border-color:var(--cream);background:var(--raised)}.package-radio input{accent-color:var(--cream);width:18px;height:18px;margin:0 12px 0 0}.package-radio strong{font-size:.9375rem}.package-radio small{display:block;font-size:.75rem;color:var(--muted);margin-left:30px}.package-radio>span:last-child{font-family:var(--heading);font-size:1.5rem}.addon-heading{margin-top:30px;font-size:1.125rem}.addon-row{display:flex;align-items:start;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);cursor:pointer}.addon-row input{flex-shrink:0;width:18px;height:18px;margin:5px 0 0;accent-color:var(--cream)}.addon-row>span{flex:1}.addon-row strong{font-size:.875rem;font-weight:500}.addon-row small{display:block;font-size:.75rem;color:var(--muted);margin-top:5px;line-height:1.6}.addon-row b{font-size:.875rem;font-weight:500;white-space:nowrap}.addon-row:has(input:disabled){opacity:.45;cursor:not-allowed}.estimate{position:sticky;top:112px;background:linear-gradient(140deg,#2c3522 0,#1c2319 65%);border:1px solid #798760;border-radius:8px;padding:24px}.estimate .eyebrow{font-size:.625rem;color:#c9d3bc}.estimate h3{font-size:1.5rem;margin:20px 0 24px}.estimate-row{display:flex;justify-content:space-between;gap:14px;font-size:.8125rem;color:#d3dbc8;padding-top:14px}.estimate-row span{max-width:190px}.estimate-row b{white-space:nowrap;font-weight:400}.total{margin-top:24px;border-top:1px solid #626e52;padding-top:18px}.total>span{font-size:.75rem;color:#c1ccb4}.total strong{font-family:var(--heading);display:block;font-size:3.25rem;line-height:1.25;letter-spacing:-.05em;margin-top:5px}.estimate .small{font-size:.75rem;margin-top:10px;color:#bac8a9}.estimate-logo{margin-top:24px;border-top:1px solid #626e52;padding-top:20px;display:flex;align-items:center;gap:15px}.estimate-logo img{width:80px;filter:invert(1);height:auto;aspect-ratio:2/1;object-fit:contain;flex-shrink:0}.estimate-logo span{font-size:.75rem;color:#c5d0b8}.setup-note{padding:16px 18px;border:1px solid #6e7e55;border-radius:5px;background:#26301f;font-size:.875rem;color:#d6dfc9;line-height:1.7;margin-bottom:24px}.setup-note strong{color:var(--cream)}.check-line{display:flex;gap:12px;align-items:start;font-size:.875rem;margin-top:24px;cursor:pointer}.check-line input{flex-shrink:0;width:20px;height:20px;margin:3px 0 0;accent-color:var(--cream)}.field-error{color:var(--error);font-size:.8125rem;margin-top:10px}.overlap-note{color:#e8c379;background:#352e1f;border:1px solid #a18b56;border-radius:5px;padding:12px;font-size:.8125rem;margin-top:16px}.gallery-tease{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-card{display:block;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--surface);text-align:left;padding:0;width:100%;transition:transform .16s,border-color .16s}.work-card .work-image{aspect-ratio:4/3;overflow:hidden;display:block}.work-card img{width:100%;height:100%;object-fit:cover}.work-card .work-meta{display:block;padding:16px 18px}.work-card strong{display:block;font-family:var(--heading);font-size:.9375rem}.work-card small{display:block;color:var(--muted);font-size:.75rem;margin-top:7px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 28px}.filter-row button{border:1px solid var(--control);border-radius:99px;background:none;min-height:44px;padding:9px 17px;font-size:.875rem}.filter-row button[aria-pressed=true]{background:var(--cream);color:#141810;border-color:var(--cream)}.empty-state{padding:48px 24px;border:1px dashed var(--control);border-radius:8px;text-align:center}.empty-state h3{margin-bottom:12px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.page-intro{padding:64px 0 32px}.page-intro .eyebrow{margin-bottom:20px}.page-intro h1{font-size:clamp(2.5rem,5.5vw,4.5rem)}.page-intro p{margin-top:24px;max-width:660px}.gallery-caption{font-size:.8125rem;margin-top:24px}.pricing-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin-top:24px}.pricing-table{width:100%;border-collapse:collapse;min-width:580px;font-size:.875rem}.pricing-table th,.pricing-table td{text-align:left;padding:20px;border-bottom:1px solid var(--line)}.pricing-table th{font-weight:500;color:var(--muted);background:var(--surface)}.pricing-table td:not(:first-child){font-variant-numeric:tabular-nums}.pricing-table tbody tr:last-child td{border-bottom:0}.services-addons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.extra-card{padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:6px}.extra-card>div{display:flex;justify-content:space-between;gap:20px}.extra-card h3{font-size:1rem}.extra-card strong{font-family:var(--heading);white-space:nowrap}.extra-card p{font-size:.875rem;margin-top:12px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:32px}.process-grid span{display:block;font-family:var(--heading);font-size:2rem;color:var(--brass);margin-bottom:16px}.process-grid h3{font-size:1.125rem;margin-bottom:12px}.process-grid p{font-size:.9375rem}.faq-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:64px}.faq-grid h2{margin-top:15px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{list-style:none;font-size:.9375rem;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:24px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--brass)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:.875rem;padding:0 20px 24px 0;line-height:1.8}.closing{position:relative;isolation:isolate;padding-block:72px;border-top:1px solid var(--line);overflow:hidden;background:#161b13}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:32px}.closing h2{margin-top:16px}.closing p{font-size:.875rem;margin-top:16px}.site-footer{padding:28px 0 36px;background:#0c0e0c;font-size:.75rem;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap}.footer-brand{display:flex;gap:14px;align-items:center}.footer-brand img{width:80px;filter:invert(1);height:auto;aspect-ratio:2/1;object-fit:contain;flex-shrink:0}.mobile-dock{display:none}.review-footnote{padding:20px 28px;font-size:.8125rem;text-align:center;color:#b6bfaa;background:#10150d}.review-footnote details{margin-top:12px}.review-footnote pre{white-space:pre-wrap;text-align:left;font:12px/1.6 monospace;max-height:240px;overflow:auto}.dialog{max-width:540px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);padding:32px;background:var(--surface);border:1px solid var(--control);border-radius:10px;color:var(--cream);overflow-y:auto}.dialog::backdrop{background:#060906df;backdrop-filter:blur(5px)}.close-dialog{position:absolute;right:12px;top:12px;width:44px;height:44px;border:1px solid var(--control);border-radius:50%;background:var(--surface);font-size:23px}.dialog .eyebrow{padding-right:36px;margin-bottom:20px}.dialog h2{font-size:2rem;margin-bottom:20px}.dialog p{font-size:.9375rem;line-height:1.8}.dialog .dialog-summary{border-block:1px solid var(--line);padding:16px 0;margin:24px 0;white-space:pre-line;font-size:.875rem;color:#d3dcc7}.dialog>.button{width:100%;margin-top:24px}.lightbox{max-width:980px;padding:60px 20px 20px}.lightbox img{max-height:70dvh;max-width:100%;width:auto;margin:auto;object-fit:contain}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.lightbox-bottom button{min-width:48px;min-height:48px;background:none;border:1px solid var(--control);border-radius:5px}.lightbox-bottom p{font-size:.875rem;text-align:center}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--raised);border:1px solid var(--control);padding:15px 20px;border-radius:6px;max-width:calc(100% - 32px);z-index:100;font-size:.875rem}.no-js{padding:24px;border:1px solid var(--control);font-size:1rem;background:var(--surface)}
@media(hover:hover) and (pointer:fine){.package-card:hover,.work-card:hover{border-color:#8b9a77;transform:translateY(-2px)}}
@media(max-width:960px){.wrap{width:calc(100% - 48px)}.hero-grid{gap:30px}.hero-photo{min-height:440px}.hero-actions{gap:10px}.hero-actions .button{font-size:.875rem;padding:12px 15px;gap:18px}.builder-grid{grid-template-columns:minmax(0,1fr) 270px;gap:24px}.estimate{padding:20px}.package-card{padding:24px 20px}.package-grid{gap:14px}.comparison-grid{gap:32px}.site-nav{gap:18px}.wordmark{display:none}.faq-grid{gap:40px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{height:76px}.brand img{width:105px;height:auto;aspect-ratio:2/1;object-fit:contain;flex-shrink:0}.wordmark{display:block;font-size:.875rem}.wordmark small{font-size:.5625rem}.header-inner{gap:12px}.menu-button{display:block}.site-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#171d13;border-bottom:1px solid var(--control);padding:20px;flex-direction:column;gap:8px;align-items:stretch}.site-nav.open{display:flex}.nav-page{text-align:left;min-height:48px}.site-nav .button{margin-top:8px}.hero{padding:36px 0 48px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero .eyebrow{font-size:.6875rem;margin-bottom:20px}.hero h1{font-size:clamp(2.65rem,10.9vw,3.6rem)}.hero-copy>p{font-size:1rem;max-width:100%;margin-top:24px}.hero-actions{gap:12px;margin-top:28px}.hero-actions .button{font-size:.875rem;padding:13px 16px;min-height:52px}.hero-note{font-size:.8125rem!important;margin-top:18px!important}.hero-photo{min-height:340px}.photo-top{left:16px;right:16px;top:16px}.photo-top .chip{font-size:.625rem}.photo-caption{left:20px;bottom:20px;right:20px}.photo-caption strong{font-size:1.5rem}.fact-grid{grid-template-columns:1fr 1fr;gap:20px 24px;padding-block:24px}.fact-grid strong{font-size:.875rem}.fact-grid span{font-size:.75rem}.section{padding-block:48px}.section-head{display:block;margin-bottom:28px}.section-head>p{margin-top:18px;max-width:100%;font-size:.9375rem}.section-head .text-button{margin-top:16px}.comparison-grid{grid-template-columns:1fr;gap:28px}.comparison-copy p{max-width:100%}.comparison-copy .small{font-size:.875rem}.comparison{aspect-ratio:4/3}.slot-word{font-size:1.125rem;padding:9px;right:16px;bottom:20px}.comparison .before-layer .slot-word{left:16px}.comparison-label{font-size:.625rem;top:12px;left:12px;padding:6px 8px}.comparison-label.after{right:12px}.package-grid{grid-template-columns:1fr;gap:16px}.package-card{padding:24px}.package-card .eyebrow{font-size:.6875rem}.package-description{min-height:0}.package-card h3{font-size:1.5rem}.package-card ul{margin:20px 0;font-size:.9375rem}.package-note{font-size:.8125rem}.builder-grid{grid-template-columns:1fr;gap:28px}.estimate{position:static}.estimate h3{font-size:1.5rem}.estimate-row{font-size:.875rem}.estimate .small{font-size:.8125rem}.total strong{font-size:3.5rem}.step-nav{gap:12px;margin-bottom:28px}.step-nav button{font-size:.8125rem}.step-nav button span{font-size:.625rem}.stage h3{font-size:1.5rem}.choice{padding:16px 14px;min-height:118px}.choice input{top:14px;right:12px;width:17px;height:17px}.choice strong{font-size:.875rem}.choice small{font-size:.8125rem}.stage-actions .button{font-size:.875rem;gap:13px;padding:12px 16px}.package-radio{padding:16px}.package-radio strong{font-size:.875rem}.package-radio>span:last-child{font-size:1.25rem}.package-radio small{font-size:.75rem}.addon-row strong{font-size:.875rem}.addon-row small{font-size:.8125rem}.form-row{grid-template-columns:1fr}.check-line{font-size:.875rem}.gallery-tease,.gallery-grid{grid-template-columns:1fr;gap:20px}.work-card .work-image{aspect-ratio:4/3}.work-card strong{font-size:1rem}.work-card small{font-size:.8125rem}.page-intro{padding-top:40px}.page-intro h1{font-size:2.6rem;line-height:1.12}.page-intro p{font-size:1rem;margin-top:22px}.filter-row{gap:8px}.filter-row button{font-size:.8125rem;padding:9px 14px}.services-addons{grid-template-columns:1fr}.pricing-table th,.pricing-table td{padding:16px}.process-grid{grid-template-columns:1fr;gap:28px;margin-top:28px}.process-grid article{display:grid;grid-template-columns:44px 1fr;column-gap:16px}.process-grid span{grid-row:1/3;font-size:1.75rem;margin:0}.process-grid h3{font-size:1.125rem;margin:2px 0 8px}.process-grid p{font-size:.9375rem;grid-column:2}.faq-grid{grid-template-columns:1fr;gap:28px}.faq-list summary{font-size:.9375rem;padding-block:20px}.faq-list details p{font-size:.875rem}.closing{padding-block:48px}.closing-inner{display:block}.closing-inner .button{margin-top:28px}.closing p{font-size:.9375rem}.footer-inner{display:block}.footer-brand{margin-bottom:20px}.site-footer{padding-bottom:104px;font-size:.8125rem}.mobile-dock{display:flex;position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:40;background:#10150ff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:12px 16px calc(12px + env(safe-area-inset-bottom));width:100%;max-width:700px;gap:12px;align-items:center}.mobile-dock .button{flex:1;min-height:48px;font-size:.875rem}.mobile-dock>span{font-size:.75rem;color:var(--muted);max-width:85px;line-height:1.6}.toast{bottom:92px}.dialog{padding:28px 22px}.dialog h2{font-size:1.75rem}.lightbox{padding:60px 12px 16px}.lightbox-bottom{gap:10px}.lightbox-bottom p{font-size:.8125rem}.preview-frame:has(dialog[open]) .mobile-dock{display:none}}
@media(max-width:500px){.review-bar{padding:12px 16px;gap:10px}.review-bar>div:first-child{line-height:1.8}.review-bar span{display:block}.review-bar strong{display:block}.device-controls button{min-height:44px}.review-footnote{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:var(--cream);color:var(--bg);padding:12px 20px}.skip-link:focus{top:16px}.handoff-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.copy-summary{width:100%;min-height:180px;background:var(--bg);color:var(--cream);border:1px solid var(--control);padding:12px}.service-descriptions{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px}.service-descriptions article{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:24px}.service-descriptions p{font-size:.9375rem;margin-top:16px}.service-descriptions ul{padding-left:20px;font-size:.875rem;color:var(--muted)}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-links a{text-decoration:underline;text-underline-offset:4px}@media(max-width:700px){.service-descriptions{grid-template-columns:1fr}}

.comparison{aspect-ratio:3/4;touch-action:pan-y;user-select:none;cursor:ew-resize}.comparison img{pointer-events:none}.comparison-views{margin-top:24px;margin-bottom:20px;gap:8px}.comparison-views button{min-height:48px}.comparison-copy .small{max-width:400px}.comparison-label{pointer-events:none}.comparison-line{pointer-events:none}.comparison-actions button{min-height:48px}@media(max-width:700px){.comparison-grid{gap:28px}.comparison-views{margin-top:24px}.comparison-views button{padding-inline:12px;font-size:.8125rem}}

/* Production mobile sizing: keep intrinsic grid sizes inside the viewport. */
.hero-grid>*,.comparison-grid>*,.builder-grid>*,.package-grid>*,.gallery-grid>*,.gallery-tease>*,.faq-grid>*,.process-grid>*,.form-row>*,.services-addons>*{min-width:0}
.pricing-table-wrap{max-width:100%;min-width:0;overscroll-behavior-x:contain}
.services-addons>article{padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:6px}
.services-addons>article h3{font-size:1.125rem;line-height:1.35}.services-addons>article p{font-size:.875rem;margin-top:12px}.services-addons>article h3 span{white-space:nowrap}
@media(max-width:700px){
 .hero-grid,.comparison-grid,.package-grid,.builder-grid,.gallery-grid,.gallery-tease,.faq-grid,.process-grid,.form-row,.services-addons,.service-descriptions{grid-template-columns:minmax(0,1fr)}
 .field,.inline-select select{min-width:0;max-width:100%}
 .package-price{flex-wrap:wrap}.stage-actions{flex-wrap:wrap}.stage-actions>*{max-width:100%}
 .comparison-actions button{flex:1;min-width:0}.range-label output{white-space:nowrap}
 .handoff-actions{flex-direction:column;align-items:stretch}.handoff-actions .button{width:100%;gap:8px;padding-inline:12px}
 .site-footer{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
}
@media(max-width:430px){
 .wrap{width:calc(100% - 32px)}
 .stage-actions{flex-direction:column;align-items:stretch;gap:16px}.stage-actions .button{width:100%}.stage-actions .text-button{align-self:flex-start}
 .package-radio{gap:10px}.package-radio>span:first-child{min-width:0}.package-radio>span:last-child{flex-shrink:0}
 .photo-top .chip{max-width:100%;white-space:normal}
 .services-addons>article{padding:20px}.lightbox-bottom{gap:8px}.lightbox-bottom p{overflow-wrap:anywhere}
}

/* Photo-only crossfade; the carousel frame keeps its existing dimensions. */
.hero-photo>img.hero-slide{opacity:0;transition:opacity 800ms ease-in-out;pointer-events:none}
.hero-photo>img.hero-slide.is-active{opacity:1}
.hero-photo .photo-caption{bottom:88px}
.hero-controls{position:absolute;left:24px;right:24px;bottom:20px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px}
.hero-arrows{display:flex;gap:6px}.hero-control{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #a6b299;border-radius:5px;background:#10140ee8;color:var(--cream);font-size:1rem;line-height:1.2}
.hero-control:hover{background:#27301f}.hero-play{min-width:76px;font-size:.8125rem}.hero-count{color:var(--cream);font-size:.8125rem;font-variant-numeric:tabular-nums;white-space:nowrap;padding:4px 8px;background:#10140ee8;border-radius:4px}
@media(max-width:700px){.hero-controls{left:16px;right:16px;bottom:16px}.hero-photo .photo-caption{left:20px;right:20px;bottom:84px}.hero-photo .photo-caption p{min-height:2.6em}}
@media(prefers-reduced-motion:reduce){.hero-photo>img.hero-slide{transition:none}}
