/* A calm, photographic planning studio. */
.planner-intro-note{font-size:.8rem;color:var(--muted)}
.planner-section{padding-top:3rem;background:linear-gradient(150deg,#f0f5ee,#fafbf8 48%,#f4f6f0);scroll-margin-top:6.5rem}
.planner-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:2rem;font-size:.77rem;color:var(--muted)}
.planner-text-button{border:0;background:none;color:var(--forest);font:inherit;font-size:.8rem;text-decoration:underline;text-underline-offset:.3em;cursor:pointer;white-space:nowrap}
.planner-step-nav{overflow-x:auto;padding-bottom:1rem;scrollbar-width:thin}
.planner-step-nav ol{list-style:none;padding:0;display:flex;justify-content:space-between;gap:.8rem;margin:0}
.planner-step-nav button{border:0;background:none;display:flex;align-items:center;gap:.5rem;padding:.25rem 0;color:var(--muted);font:inherit;font-size:.75rem;white-space:nowrap;cursor:pointer}
.planner-step-nav button span{display:grid;place-items:center;width:1.9rem;height:1.9rem;border:1px solid var(--rule);border-radius:50%;font-size:.63rem;transition:all .25s}
.planner-step-nav button[aria-current]{color:var(--forest);font-weight:600}
.planner-step-nav button[aria-current] span{color:#fff;background:var(--forest);border-color:var(--forest)}
.planner-step-nav button:disabled{opacity:.5;cursor:default}
.planner-progress{height:2px;background:var(--rule);margin-bottom:3rem;overflow:hidden}
.planner-progress::before{content:"";display:block;height:100%;width:100%;background:var(--forest);transform:scaleX(var(--planner-progress,.14));transform-origin:left;transition:transform .5s var(--ease)}
.planner-shell{display:grid;grid-template-columns:minmax(0,1fr) 19rem;gap:3rem;align-items:start}
#plannerPanel,#plannerSummary{min-width:0}#plannerSummary{position:sticky;top:7rem}
.planner-step-content{animation:plannerEnter .4s var(--ease) both}
@keyframes plannerEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.planner-step-head{margin-bottom:2.5rem}.planner-step-head .eyebrow{margin-bottom:.6rem}
.planner-step-head h2{font-size:clamp(2.3rem,4vw,3.65rem);line-height:1.05;margin-bottom:1.15rem;outline:none}
.planner-step-head>p:last-of-type{color:var(--muted);font-size:.95rem;max-width:62ch}
.planner-field{border:0;margin:0 0 2.5rem;padding:0;min-width:0}
.planner-field legend{font:500 1.3rem/1.4 var(--serif);letter-spacing:-.01em;margin-bottom:1rem;padding:0}
.planner-choice-grid,.planner-room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.planner-mood-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.planner-choice{position:relative;display:block;cursor:pointer;min-width:0}
.planner-choice input{position:absolute;width:1px;height:1px;opacity:0;top:1rem;left:1rem}
.planner-choice-content{position:relative;display:flex;height:100%;border:1px solid var(--rule);border-radius:.75rem;background:rgba(255,255,255,.72);overflow:hidden;transition:border-color .25s,box-shadow .25s,transform .25s,background .25s}
.planner-choice-copy{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 2.6rem 1.1rem 1.15rem}
.planner-choice-title{font-size:.89rem;line-height:1.35;font-weight:600;color:var(--ink)}
.planner-choice-description{font-size:.78rem;line-height:1.55;color:var(--muted)}
.planner-choice-mark{position:absolute;top:.8rem;right:.8rem;border:1px solid var(--rule);border-radius:50%;background:rgba(255,255,255,.95);color:transparent;width:1.25rem;height:1.25rem;display:grid;place-items:center;font-size:.72rem;line-height:1}
.planner-choice:has(input:checked) .planner-choice-content{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest);background:#f0f6ed}
.planner-choice:has(input:checked) .planner-choice-mark{background:var(--forest);border-color:var(--forest);color:#fff}
.planner-choice:has(input:focus-visible) .planner-choice-content{outline:2px solid var(--forest);outline-offset:4px}
@media(hover:hover){.planner-choice:hover .planner-choice-content{transform:translateY(-2px);border-color:var(--olive);box-shadow:0 7px 20px #2944320c}.planner-choice--photo:hover img{transform:scale(1.025)}}
.planner-choice:active .planner-choice-content{transform:scale(.985)}
.planner-choice--photo .planner-choice-content{flex-direction:column}
.planner-choice--photo img{display:block;aspect-ratio:1.6;object-fit:cover;width:100%;height:auto;transition:transform .6s var(--ease)}
.planner-choice--photo .planner-choice-copy{padding:1rem 1.15rem 1.1rem}
.planner-choice--photo .planner-choice-title{font-family:var(--serif);font-size:1.65rem;font-weight:500;letter-spacing:-.03em}
.planner-mood-grid .planner-choice--photo img{aspect-ratio:.8}
.planner-mood-grid .planner-choice-title{font-size:1.4rem}
.planner-unsure-choice{margin-top:1rem}
.planner-small{font-size:.76rem;color:var(--muted);line-height:1.6;margin-top:1rem}
.planner-choice--material .planner-choice-content{display:grid;grid-template-columns:4.3rem 1fr}
.material-swatch{display:block;min-height:5.5rem;background:#edece5}
.swatch-vinyl{background:repeating-linear-gradient(1deg,transparent 0 4px,#6f5d4430 5px,transparent 7px),repeating-linear-gradient(90deg,#cbb99d 0 22px,#dbcbb5 23px 43px,#9b896a 44px 45px)}
.swatch-wood{background:repeating-linear-gradient(2deg,transparent 0 4px,#74503250 5px,transparent 7px),repeating-linear-gradient(90deg,#b8946b 0 26px,#c6a983 27px 51px,#8a6844 52px 53px)}
.swatch-tile{background:linear-gradient(90deg,transparent 96%,#c4c5bd 97%),linear-gradient(0deg,transparent 96%,#c4c5bd 97%),#e2e1d9;background-size:30px 40px}
.swatch-heated{background:linear-gradient(90deg,transparent 96%,#d0c8b5 97%),linear-gradient(0deg,transparent 96%,#d0c8b5 97%),#e6dec9;background-size:30px 40px}
.swatch-painted{background:linear-gradient(90deg,#eeefe8,#fffdf5 48%,#e2e3d8)}
.swatch-sage{background:linear-gradient(90deg,#718576,#95a38a 48%,#778774)}
.swatch-quartz{background:repeating-linear-gradient(125deg,#f4f2e8 0 18px,#e4e2d6 19px,#f4f2e8 21px 39px)}
.swatch-stone{background:repeating-linear-gradient(130deg,#e7e3d9 0 30px,#c9c6ba 31px,#f0ede5 33px 39px)}
.swatch-marble{background:repeating-linear-gradient(120deg,#f4f3ed 0 25px,#b4b8ae 26px,#f4f3ed 28px 60px,#d6d0c0 62px,#f4f3ed 66px 78px)}
.swatch-chrome{background:linear-gradient(110deg,#a7adb0,#fcffff 40%,#a5acb1 51%,#e4ebee)}
.swatch-nickel{background:linear-gradient(110deg,#a8a69a,#e1dfd5 40%,#c0bdb3 51%,#d9d7cd)}
.swatch-brass{background:linear-gradient(110deg,#9b7a46,#dcca99 40%,#b5975e 51%,#c9b785)}
.swatch-black{background:linear-gradient(110deg,#292c29,#444742,#262a26)}
.swatch-subway{background:linear-gradient(90deg,transparent 97%,#d6d9d2 98%),linear-gradient(0deg,transparent 94%,#d6d9d2 95%),#fafaf5;background-size:48px 24px}
.planner-measurements{display:flex;align-items:end;gap:1rem;flex-wrap:wrap;padding:1.2rem;background:#e9f0e5;border-radius:.75rem;margin:-1rem 0 2.5rem}
.planner-measurements label{font-size:.8rem;flex:1;min-width:9rem}.planner-measurements p{font-size:.78rem;color:var(--muted);flex:1}
.planner-measurements input,.planner-notes textarea{display:block;width:100%;padding:.8rem;border:1px solid var(--rule);border-radius:.4rem;background:#fff;font:inherit;color:var(--ink);margin-top:.5rem}
.planner-notes label{font-size:.9rem}.planner-notes label span{color:var(--muted)}.planner-notes textarea{resize:vertical;min-height:8rem;font-size:.9rem}
.planner-actions{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--rule)}
.planner-actions>span{font-size:.7rem;color:var(--muted)}.planner-actions button:disabled{opacity:.35;pointer-events:none}
.planner-summary-card{border:1px solid #fff;border-radius:1rem;background:rgba(255,255,255,.75);box-shadow:0 20px 60px #27422f0b;overflow:hidden;backdrop-filter:blur(20px)}
.planner-summary-image{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;display:block}
.planner-summary-body{padding:1.5rem}.planner-summary-body h3{font-size:1.85rem;line-height:1.1;margin:.6rem 0 1.2rem}.planner-summary-body>p:not([class]){font-size:.9rem;color:var(--muted)}
.planner-price-label{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}.planner-price{font-family:var(--serif);font-size:1.7rem;line-height:1.2;margin:.3rem 0 .5rem}.planner-price-note{font-size:.73rem;color:var(--muted);line-height:1.5}
.planner-mini-summary{margin:1.3rem 0;padding:0;font-size:.75rem}.planner-mini-summary>div{padding:.7rem 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:.75rem}.planner-mini-summary dt{color:var(--muted)}.planner-mini-summary dd{margin:0;text-align:right;font-weight:500}
.planner-source-link{font-size:.72rem;text-underline-offset:.2em}.planner-open-choices{font-size:.73rem;margin-bottom:1rem;color:var(--muted)}
.planner-welcome-list{padding-left:1.15rem;font-size:.8rem;line-height:1.6;margin-top:1.5rem}.planner-welcome-list li{padding:.5rem 0}
.planner-reset-confirm,.planner-errors{border:1px solid #b8a985;background:#fffaf0;padding:1.25rem;border-radius:.6rem;margin:0 0 1.5rem;font-size:.85rem}.planner-reset-confirm[hidden],.planner-errors[hidden]{display:none}.planner-reset-confirm p{margin-bottom:1rem}.planner-errors ul{margin:.5rem 0 0;padding-left:1.25rem}
.planner-status{font-size:.85rem;color:var(--forest);margin-top:1rem}
#remodelPlanner[data-review=true] .planner-shell{display:block}#remodelPlanner[data-review=true] #plannerSummary{display:none}
.plan-tools{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2.5rem;align-items:center}
.plan-overview{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:start}.plan-inspiration{margin:0}.plan-inspiration img{width:100%;height:auto;aspect-ratio:1.2;object-fit:cover;border-radius:.85rem}.plan-inspiration figcaption{font-size:.74rem;color:var(--muted);margin-top:.65rem}.plan-inspiration a{display:block;margin-top:.3rem}
.plan-range{background:#fff;border-radius:.85rem;padding:2rem;border:1px solid var(--rule)}.plan-range h3{font-size:clamp(2rem,3.5vw,3rem);line-height:1.05;margin:.5rem 0 1rem}.plan-range>p:not(.eyebrow){font-size:.88rem;color:var(--muted)}.plan-range a{font-size:.8rem}.plan-reasons{margin:1.5rem 0 1rem;padding-top:1.25rem;border-top:1px solid var(--rule)}.plan-reasons h4{font-size:.83rem;font-weight:600}.plan-reasons ul{font-size:.8rem;padding-left:1.15rem;margin:.6rem 0}.plan-reasons li{margin:.3rem 0}
.plan-range .plan-budget-flag{background:#f7efdd;color:#665427!important;border-radius:.5rem;padding:1rem;margin:1rem 0}
.plan-materials{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}.plan-materials>div{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid var(--rule);border-radius:.65rem;overflow:hidden}.plan-materials .material-swatch{width:4.5rem;flex-shrink:0;align-self:stretch;min-height:6rem}.plan-materials p{padding:.65rem .6rem .65rem 0;font-size:.75rem;line-height:1.35}.plan-materials p span{display:block;color:var(--muted);font-size:.65rem;margin-bottom:.35rem}.plan-materials strong{font-weight:500}
.plan-selections{margin-top:4rem}.plan-section-heading h3,.plan-next-grid h3,.plan-handoff h3{font-size:2.5rem;line-height:1.1;margin:.5rem 0 1.5rem}.plan-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem}.plan-detail-grid>div{padding:1rem 0;border-top:1px solid var(--rule);overflow-wrap:anywhere}.plan-detail-grid dt{font-size:.74rem;color:var(--muted);margin-bottom:.4rem}.plan-detail-grid dd{font-size:.88rem;margin:0;white-space:pre-wrap}.plan-next-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:4rem;margin-top:4rem}.plan-next-grid p,.plan-next-grid li,.plan-next-grid a{font-size:.9rem}.plan-next-grid ul{padding-left:1.15rem}.plan-next-grid li{margin:.6rem 0}.plan-next-grid a{display:inline-block;margin-top:1rem}
.plan-method{border-block:1px solid var(--rule);padding:1.5rem 0;margin-top:3rem;font-size:.8rem;color:var(--muted)}.plan-method summary{cursor:pointer;font-weight:600;color:var(--forest)}.plan-method ul{padding-left:1.25rem;margin-top:1rem}.plan-method li{margin:.5rem 0}
.plan-handoff{margin-top:3rem;background:#e6eee2;border-radius:.85rem;padding:2.5rem;display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}.plan-handoff p{font-size:.9rem}.plan-handoff>div:last-child{display:flex;gap:.8rem;flex-direction:column;align-items:start}
@media(max-width:1100px){.planner-shell{gap:1.5rem;grid-template-columns:minmax(0,1fr) 16rem}.planner-summary-body{padding:1.15rem}.planner-mood-grid{grid-template-columns:1fr}.planner-mood-grid .planner-choice-content{display:grid;grid-template-columns:40% 1fr}.planner-mood-grid .planner-choice--photo img{aspect-ratio:1.2;height:100%}.planner-mood-grid .planner-choice-copy{padding-right:2rem}.plan-materials{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.planner-shell{grid-template-columns:1fr}#plannerSummary{position:static}.planner-summary-card{display:grid;grid-template-columns:35% 1fr}.planner-summary-image{height:100%;aspect-ratio:auto}.planner-summary-card:not(:has(img)){display:block}.planner-progress{margin-bottom:2rem}.planner-step-nav ol{gap:1.3rem}.plan-overview,.plan-next-grid,.plan-handoff{grid-template-columns:1fr;gap:2rem}.plan-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-tools .btn{font-size:.75rem}.planner-section{scroll-margin-top:5.5rem}}
@media(max-width:520px){.planner-toolbar{font-size:.69rem;align-items:start;gap:1rem}.planner-text-button{font-size:.72rem}.planner-choice-grid{grid-template-columns:1fr}.planner-choice-grid--small{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-choice-grid--small .planner-choice-copy{padding:.85rem 2rem .85rem .75rem}.planner-choice-grid--small .planner-choice-title{font-size:.76rem}.planner-room-grid{gap:.7rem}.planner-room-grid .planner-choice-title{font-size:1.4rem}.planner-room-grid .planner-choice-copy{padding:.8rem}.planner-room-grid .planner-choice-description{font-size:.73rem}.planner-room-grid img{aspect-ratio:1.05}.planner-actions .btn{padding:.75rem 1rem;font-size:.8rem}.planner-actions>span{display:none}.planner-summary-card{display:block}.planner-summary-image{aspect-ratio:2;height:auto}.plan-tools{gap:.6rem}.plan-tools .btn{padding:.7rem 1rem}.plan-range{padding:1.5rem}.plan-materials{gap:.65rem}.plan-materials>div{display:block}.plan-materials .material-swatch{width:100%;height:3rem;min-height:0}.plan-materials p{padding:.75rem}.plan-detail-grid{grid-template-columns:1fr}.plan-handoff{padding:1.5rem}.planner-step-head h2{font-size:2.4rem}.planner-measurements p{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.planner-step-content{animation:none}.planner-choice-content,.planner-choice img,.planner-progress::before{transition:none}}
@media print{
 @page{size:auto;margin:16mm}
 body{background:#fff!important;color:#17281c!important;font-size:10pt!important}
 .site-header,.page-hero,.site-footer,.chat,.schedule,.skip,.planner-toolbar,.planner-reset-confirm,.planner-step-nav,.planner-progress,#plannerSummary,.plan-tools,.planner-status,.plan-handoff .btn{display:none!important}
 .planner-section{background:#fff!important;padding:0!important}.wrap{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
 .planner-step-content{animation:none!important}.plan-report h2{font-size:28pt}.plan-report h3{font-size:20pt}.plan-overview{gap:1.5rem}.plan-range{padding:1rem}.plan-inspiration img{max-height:70mm;object-fit:cover}.plan-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}.plan-detail-grid>div{break-inside:avoid;padding:.65rem 0}.plan-selections,.plan-next-grid{margin-top:1.5rem}.plan-next-grid{gap:2rem}.plan-materials{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-materials>div{display:block;break-inside:avoid}.plan-materials .material-swatch{width:100%;height:12mm;min-height:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.plan-materials p{padding:.5rem}.plan-section-heading,.plan-next-grid h3{break-after:avoid}.plan-method,.plan-handoff{margin-top:1.5rem;padding:1rem}.plan-handoff{display:block;break-inside:avoid}.plan-handoff::after{content:"Allrounder Remodeling · 651-497-7715 · allrounder-remodeling.pages.dev";font-size:9pt;display:block;margin-top:1rem}.plan-report a{color:inherit;text-decoration:underline}.plan-method>ul{display:block!important}.plan-inspiration,.plan-range{break-inside:avoid}
}

.planner-page .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
