:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263d37;background:#f5f3ee;font-synthesis:none;--green:#205b47;--muted:#73817a;--line:#e1e5dc}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #a3c7b1;outline-offset:3px}.shell{max-width:540px;margin:auto;min-height:100dvh}header{padding:22px 22px 18px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;letter-spacing:-.6px}.brand img{width:43px;height:43px;border-radius:50%;object-fit:cover}.brand small{font-size:8px;letter-spacing:1.8px;display:block;font-weight:700;margin-top:4px}.phone{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:20px;background:#fff9}main{padding:8px 22px 112px}h1{font-size:33px;line-height:1.14;font-weight:800;letter-spacing:-1.4px;margin:14px 0}h2{font-size:20px;line-height:1.25;letter-spacing:-.5px;margin:0 0 14px}h3{font-size:17px;margin:0 0 8px}p{line-height:1.65;margin:10px 0;font-size:14px}.muted,small{color:var(--muted)}.eyebrow{color:var(--green);font-weight:800;font-size:10px;letter-spacing:1.9px;text-transform:uppercase}.hero{position:relative;background:#e3eadf;padding:25px;border-radius:25px;overflow:hidden;min-height:310px;margin-top:8px}.hero h1{max-width:280px;font-size:38px}.hero p{max-width:270px}.rug{position:absolute;right:-24px;bottom:-45px;width:172px;height:142px;transform:rotate(-25deg);border-radius:14px;background:repeating-linear-gradient(90deg,#c1cdbc 0 2px,#d3ddcc 2px 5px);border:13px solid #ccd7c4;box-shadow:0 8px 0 #c1cfb8,0 16px 0 #b5c6ad;opacity:.6;pointer-events:none}.hero .primary{position:relative;margin-top:20px;width:auto;padding:15px 21px}.primary,.secondary,.quiet{border:0;border-radius:13px;padding:15px 18px;min-height:48px;font-weight:700;font-size:14px;display:block;text-align:center;width:100%}.primary{background:var(--green);color:white}.primary:disabled{opacity:.5;cursor:wait}.secondary{background:#e9eee6;color:var(--green)}.quiet{background:transparent;border:1px solid var(--line);color:var(--green)}.benefits{display:flex;gap:8px;margin:17px 0 27px}.benefits span{font-size:10px;text-align:center;flex:1;background:white;border-radius:12px;padding:12px 6px;line-height:1.6}.benefits b{display:block;font-size:17px;color:var(--green)}.section{margin-top:25px}.card{background:#fff;border:1px solid #e8eae2;border-radius:19px;padding:20px;margin:12px 0}.linkrow{display:flex;align-items:center;justify-content:space-between;gap:12px}.linkrow p{margin:3px 0}.tag{font-size:10px;background:#e9eee6;color:var(--green);border-radius:8px;padding:5px 8px;font-weight:700}.chevron{font-size:23px;color:var(--green)}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:540px;display:flex;background:#fafbf8ed;backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));z-index:10}nav a{width:25%;text-align:center;color:#7b857e;font-size:10px;font-weight:700;padding:5px 0}nav a span{display:block;font-size:24px;line-height:1.2;margin-bottom:5px}nav a.active{color:var(--green)}.backline{display:flex;gap:20px;margin:3px 0 16px}.textbtn{background:transparent;border:0;color:var(--green);padding:5px 0;font-size:12px;font-weight:700}.steps{display:flex;gap:6px;margin:18px 0 24px}.steps span{height:4px;border-radius:4px;flex:1;background:#dce3d8}.steps .filled{background:var(--green)}label{display:block;font-size:12px;font-weight:700;margin:15px 0 7px}input,select,textarea{background:#fafbf8;color:#263d37;border:1px solid #dbe2d6;border-radius:11px;padding:13px;width:100%;min-width:0;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #205b4712}.dimensions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.material{display:grid;grid-template-columns:1fr 1fr;gap:8px}.material button{padding:13px 8px;border-radius:12px;border:1px solid #dfe4da;background:#fafbf8;color:#44594e;font-size:12px;font-weight:700}.material button.selected{background:#e8f0e3;border-color:var(--green);color:var(--green)}.material small{display:block;font-weight:500;margin-top:5px;font-size:11px}.remove{background:none;border:0;color:#879187;font-size:21px;padding:0 3px}.total{background:#e4ecdf;border-radius:18px;padding:20px;margin:20px 0}.total strong{display:block;font-size:31px;letter-spacing:-1px;margin:5px 0}.total p{font-size:11px;margin:5px 0}.note{font-size:11px;color:var(--muted);line-height:1.7;margin:14px 0}.dategrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.dategrid button{border:1px solid var(--line);border-radius:12px;padding:13px;background:white;color:var(--green);font-weight:700;font-size:13px}.dategrid .selected{background:var(--green);color:white}.actions{display:grid;gap:10px;margin:18px 0}.address{white-space:pre-line;line-height:1.7;font-size:14px}.check{display:flex;align-items:flex-start;gap:10px;font-size:11px;line-height:1.6;font-weight:500}.check input{width:20px;min-width:20px;min-height:20px;margin:0;accent-color:var(--green)}.summaryrow{display:flex;justify-content:space-between;gap:20px;font-size:13px;margin:12px 0}.summaryrow span:last-child{text-align:right}.success{text-align:center;padding:35px 0}.success .seal{width:80px;height:80px;margin:0 auto 25px;border-radius:50%;background:#e4ecdf;color:var(--green);display:grid;place-items:center;font-size:40px}.loading{padding:40px 0;color:var(--muted);text-align:center}.error{color:#9b4639;background:#fff1ed;padding:12px 15px;border-radius:12px;font-size:13px;margin:15px 0}.saved{background:#edf3e8;padding:14px;border-radius:12px;margin:12px 0}.saved .check{font-size:13px}.order-top{display:flex;justify-content:space-between;align-items:center}.order-top strong{font-size:15px}.order-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;margin-top:16px;font-size:13px}#notice{position:fixed;top:12px;left:50%;transform:translateX(-50%);max-width:90%;padding:12px 18px;background:#263d37;color:#fff;font-size:13px;border-radius:12px;z-index:30;display:none}.hours{display:flex;justify-content:space-between;font-size:13px;padding:9px 0;border-top:1px solid var(--line)}.card .hours:first-of-type{margin-top:17px}footer{font-size:10px;color:#879187;text-align:center;margin-top:25px}@media(min-width:700px){body{background:#e9ece4}.shell{background:#f5f3ee;box-shadow:0 0 80px #263d3710}}@media(prefers-reduced-motion:no-preference){main{animation:appear .18s ease-out}@keyframes appear{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:none}}}

.hero .rug{z-index:0}.hero .primary,.hero h1,.hero p,.hero .eyebrow{position:relative;z-index:1}

.extras{border-top:1px solid var(--line);margin-top:15px;padding-top:5px}.extras h4{font-size:12px;margin:14px 0}.extra-option{display:flex;align-items:center;gap:11px;padding:9px 0;margin:0;font-weight:600;font-size:12px;cursor:pointer}.extra-option input{width:19px;height:19px;min-height:19px;margin:0;accent-color:var(--green);flex-shrink:0}.extra-option span{flex:1}.extra-option small{display:block;font-weight:500;font-size:11px;margin-top:3px}

nav a{width:20%}.price-links{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.price-links a{padding:9px 13px;background:#e4ecdf;border-radius:10px;font-size:12px;font-weight:700}.price-row{padding:15px 0;border-bottom:1px solid var(--line)}.price-row:last-child{border-bottom:0;padding-bottom:0}.price-row p{font-size:13px;line-height:1.5;margin:0 0 8px}.price-amount{display:flex;align-items:center;gap:10px}.price-amount strong{font-size:16px;color:var(--green)}.price-amount small{font-size:11px}.price-category{scroll-margin-top:20px}.price-source{font-size:12px;text-decoration:underline}

.promo-entry{background:#e9eddd;margin-bottom:26px}.promo-entry h3{margin-top:8px}.promo-icon{font-size:42px;color:var(--green);font-weight:800}.promo-badge{display:inline-block;background:var(--green);color:white;font-size:32px;font-weight:800;letter-spacing:-1px;padding:10px 17px;border-radius:15px;margin:0 0 22px}.promo-conditions{padding-left:20px;font-size:13px;line-height:1.7}.promo-conditions li{margin:10px 0}.promo-card{margin-top:22px}
