@charset "UTF-8";
/* Readable service pages and a direct path from project evidence to an inquiry. */
.project-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.trust-link{text-decoration:none;display:flex;flex-direction:column;gap:3px;max-width:350px}
.trust-link strong{font-size:1rem}.trust-link span{font-size:.75rem;color:var(--muted)}
.trust-link:hover strong{text-decoration:underline}
.project-planning{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;border-top:1px solid var(--line)}
.project-planning h2{font-size:clamp(2.4rem,3.8vw,3.5rem)}
.project-planning p{margin-top:22px;color:var(--muted)}
.project-planning .actions{margin-top:28px}.project-planning .faq{margin-top:0}
.project-planning .faq p{margin-top:0}
.local-planning{border-top:1px solid var(--line)}
.next-step-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.next-step-grid article{padding:34px;border:1px solid var(--line)}
.next-step-grid article:first-child{background:var(--cream)}
.next-step-grid h3{font-size:2rem}.next-step-grid p{margin:20px 0 28px;color:var(--muted)}
.local-rate{margin-top:28px;font-size:1rem;max-width:85ch}
.optional{font-weight:400;color:var(--muted)}
.work-video{padding-top:0}.work-video .video-section{margin-top:0}
.video-section video{height:auto;aspect-ratio:9/16;object-fit:contain}
[hidden]{display:none!important}
.inquiry fieldset{border:0;padding:0;margin:0;min-width:0}.inquiry legend{font:2rem/1.15 Georgia,serif;margin-bottom:24px;padding:0}.inquiry fieldset:disabled{opacity:.65}.button:disabled{opacity:.55;cursor:wait}.bot-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);left:-10000px}.inquiry .field small{font-size:.875rem;color:var(--muted);display:block;margin-top:7px}.booking-head{padding-top:40px;padding-bottom:34px}.booking-head h1{font-size:clamp(2.7rem,4vw,4.2rem);margin-bottom:18px}.booking-layout{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:60px;padding-bottom:85px}.booking-guide h2{font-size:2.4rem;margin-bottom:25px}.booking-window{padding:22px 0;border-top:1px solid var(--line)}.booking-window p{margin-top:10px;font-size:1rem}.legacy-booking{margin-top:20px;padding:25px;background:var(--cream)}.legacy-booking h3{font-size:1.6rem}.legacy-booking p{margin:12px 0}.booking-form h2{font-size:2rem;margin:30px 0 20px}.booking-form .field textarea{min-height:85px}.booking-summary{background:var(--paper);border-left:3px solid var(--accent);padding:20px;margin:20px 0}.booking-summary h3{font-size:1.6rem;margin-bottom:14px}.booking-summary p+p{margin-top:16px}.check-line{display:flex;align-items:flex-start;gap:12px;margin:20px 0;font-size:.95rem}.check-line input{width:20px;height:20px;margin-top:5px;flex-shrink:0}.booking-frame{width:100%;height:1850px;border:0;background:var(--cream)}.form-status:not(:empty){margin-top:18px;padding:16px;border:1px solid var(--line);font-size:1rem;overflow-wrap:anywhere}.booking-form .button{margin:4px 4px 8px 0}.booking-form input,.booking-form select,.booking-form textarea{max-width:100%}@media(max-width:900px){.booking-layout{grid-template-columns:1fr;gap:30px}.booking-guide{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.booking-guide h2,.legacy-booking{grid-column:1/-1}.booking-frame{height:1950px}}@media(max-width:520px){.booking-guide{display:block}.booking-frame{height:2260px}.booking-form{padding:20px}.booking-head h1{font-size:2.8rem}.booking-summary{padding:16px}}
:root{--ink:#183c35;--muted:#59665e;--paper:#f6f3eb;--cream:#eae5d9;--accent:#c76938;--line:#d7d8ca;--white:#fffdf7;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}img,video{max-width:100%;display:block}img{height:auto}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06;text-wrap:balance}h1{font-size:clamp(3rem,5.6vw,6.1rem);letter-spacing:-.055em}h2{font-size:clamp(2.5rem,4vw,4.4rem);letter-spacing:-.045em}h3{font-size:clamp(1.65rem,2.5vw,2.6rem);letter-spacing:-.035em}p{max-width:65ch}::selection{background:#efc59b;color:var(--ink)}.wrap{width:min(1360px,calc(100% - 96px));margin-inline:auto}.eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:.17em;font-weight:700;display:block;margin-bottom:23px}.subtle{color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--white);padding:12px}.skip:focus{top:10px}.site-header{position:relative;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:98px;display:flex;align-items:center;gap:40px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;white-space:nowrap}.brand img{width:42px;height:42px}.brand strong{font-family:var(--serif);font-size:1.65rem;font-weight:400;letter-spacing:-.055em}.brand small{display:block;font-size:.54rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;line-height:1.5;margin-top:1px}.nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:.8rem}.nav>a{text-decoration:none}.nav>a:hover{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;min-height:51px;padding:12px 24px;background:var(--ink);color:var(--white);border:1px solid var(--ink);text-decoration:none;font-size:.82rem;font-weight:600;line-height:1.4;transition:background .2s,color .2s}.button:hover{background:#29574b}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.light:hover{background:#fff}.button.outline{background:transparent;color:var(--ink);border-color:var(--line)}.button.outline:hover{border-color:var(--ink)}.arrow{font-size:1.3rem;line-height:1}.nav .button{padding:10px 19px;min-height:43px}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:8px 13px;color:var(--ink)}.hero{padding-top:58px}.hero-grid{display:grid;grid-template-columns:.87fr 1.23fr;gap:54px;align-items:center}.hero-copy{padding:5px 0 35px}.hero h1 em{font-weight:400;color:var(--accent)}.hero .intro{margin-top:27px;max-width:390px;font-size:1rem;color:var(--muted);line-height:1.75}.hero .actions{display:flex;flex-wrap:wrap;align-items:center;gap:23px;margin-top:31px}.text-link{font-size:.84rem;font-weight:600}.hero-image{position:relative}.hero-image>img{width:100%;height:560px;object-fit:cover;object-position:39% center}.image-note{position:absolute;bottom:19px;left:20px;background:var(--paper);padding:11px 16px;font-size:.63rem;text-transform:uppercase;letter-spacing:.1em;display:flex;gap:22px;align-items:center}.image-note span:first-child{width:7px;height:7px;background:var(--accent);border-radius:50%}.hero-bottom{margin-top:47px;padding-block:22px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px;font-size:.72rem}.hero-bottom .label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.service-inline{display:flex;gap:28px;flex-wrap:wrap}.service-inline a{text-decoration:none}.service-inline a:hover{text-decoration:underline}.section{padding-block:108px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:46px}.section-heading p{max-width:340px;color:var(--muted);font-size:.9rem}.work-grid{display:grid;grid-template-columns:1.32fr 1fr;gap:38px;align-items:start}.project-card{text-decoration:none;display:block}.project-card .photo{overflow:hidden;background:var(--cream)}.project-card img{width:100%;height:465px;object-fit:cover;transition:transform .55s}.project-card:hover img{transform:scale(1.025)}.project-card.tall{padding-top:88px}.project-card.tall img{height:530px;object-position:center 37%}.project-card .caption{display:flex;justify-content:space-between;gap:18px;padding-top:24px}.project-card small{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;color:var(--muted)}.circle-arrow{display:grid;place-items:center;border:1px solid var(--line);border-radius:100%;width:44px;height:44px;flex-shrink:0;font-size:1.3rem}.project-card:hover .circle-arrow{background:var(--ink);color:var(--paper)}.work-foot{font-size:.72rem;color:var(--muted);margin-top:30px}.services{background:var(--ink);color:var(--paper)}.services .section-heading p{color:#c6d0c4}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 64px}.service-row{padding:27px 0;border-top:1px solid #527167;display:grid;grid-template-columns:33px 1fr auto;gap:17px;text-decoration:none;align-items:start}.service-row .number{font-size:.65rem;color:#bdccbf;margin-top:8px}.service-row h3{font-size:2rem}.service-row p{font-size:.82rem;color:#c6d0c4;margin-top:12px;max-width:340px}.service-row .arrow{padding-top:7px;color:#e9b989}.service-row:hover h3{text-decoration:underline;text-underline-offset:6px}.process{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.process figure img{width:100%;aspect-ratio:1/1.06;object-fit:cover;object-position:35% center}.process figcaption{font-size:.68rem;letter-spacing:.04em;margin-top:13px;color:var(--muted)}.steps{list-style:none;padding:0;margin:38px 0 0;counter-reset:steps}.steps li{counter-increment:steps;position:relative;padding:0 0 22px 48px;margin-bottom:22px;border-bottom:1px solid var(--line)}.steps li:before{content:'0' counter(steps);position:absolute;left:0;top:3px;font-size:.72rem;color:var(--accent)}.steps h3{font-size:1.65rem}.steps p{margin-top:10px;font-size:.88rem;color:var(--muted)}.indoor{padding-block:52px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.indoor img{width:100%;aspect-ratio:1.5;object-fit:cover}.indoor h2{font-size:clamp(2.3rem,3.5vw,3.8rem)}.indoor p{margin-block:21px;color:var(--muted);font-size:.92rem}.about{display:grid;grid-template-columns:.77fr 1.25fr;gap:110px;align-items:center;padding-inline:80px}.about .portrait{position:relative}.about .portrait img{width:100%;height:435px;object-fit:cover;object-position:center 25%}.about .portrait:before{content:'';position:absolute;inset:18px 18px -18px -18px;border:1px solid #aab5a2;z-index:-1}.about h2{font-size:clamp(2.6rem,4vw,4.2rem)}.about p{color:var(--muted);margin-top:24px;font-size:.94rem}.about .text-link{display:inline-block;margin-top:27px}.signature{font-family:var(--serif);font-style:italic;font-size:1.6rem;margin-top:26px}.cta{background:#e5e9df;padding-block:70px}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.cta h2{font-size:clamp(2.5rem,4vw,4.4rem)}.cta p{color:var(--muted);margin-top:17px;font-size:.9rem}.footer{background:var(--ink);color:var(--paper);padding:54px 0 22px}.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:45px}.footer .brand{align-self:flex-start}.footer-copy{font-size:.8rem;color:#c6d0c4;max-width:330px}.footer-links{display:flex;gap:25px;font-size:.76rem;flex-wrap:wrap}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #446257;padding-top:21px;font-size:.65rem;color:#c6d0c4;gap:20px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.page-head{padding:70px 0 55px}.page-head h1{max-width:950px;font-size:clamp(3rem,6.5vw,6rem)}.page-head .lead{font-size:1.06rem;color:var(--muted);max-width:640px;margin-top:25px}.back-link{display:inline-block;font-size:.75rem;margin-bottom:38px}.project-hero{width:100%;max-height:760px;object-fit:cover}.project-meta{display:flex;gap:55px;padding:24px 0;border-bottom:1px solid var(--line);font-size:.77rem}.project-meta span{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.61rem;margin-bottom:5px}.project-story{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.project-story p{color:var(--muted);font-size:1rem}.project-story p+p{margin-top:18px}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px}.project-gallery figure img{width:100%;height:430px;object-fit:cover}.project-gallery figcaption{font-size:.77rem;color:var(--muted);margin-top:12px}.video-section{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center;margin-top:75px}.video-section video{width:100%;max-height:600px;background:#101d17}.video-section p{margin-top:22px;color:var(--muted)}.video-section small{display:block;margin-top:20px;font-size:.74rem;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start;padding-bottom:95px}.contact-info h2{font-size:2.3rem}.contact-info p{margin-block:20px;color:var(--muted);font-size:.9rem}.contact-info .contact-address{font-size:1rem;overflow-wrap:anywhere}.contact-info .rule{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.inquiry{padding:34px;background:var(--cream)}.inquiry h2{font-size:2rem;margin-bottom:10px}.inquiry>p{font-size:.84rem;color:var(--muted);margin-bottom:28px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:21px}.field label{display:block;font-size:.78rem;font-weight:600;margin-bottom:8px}.field input,.field select,.field textarea{display:block;width:100%;min-height:49px;padding:11px 13px;border:1px solid #aeb7a9;background:var(--white);color:var(--ink);border-radius:0;font-size:.86rem}.field textarea{min-height:130px;resize:vertical}.field small{display:block;color:var(--muted);font-size:.7rem;margin-top:7px}.inquiry .button{width:100%}.inquiry .form-note{font-size:.73rem;margin-top:15px;margin-bottom:0}.form-status{font-size:.86rem;padding-top:18px}.content-narrow{max-width:820px;margin-inline:auto}.prose h2{font-size:2rem;margin-top:40px;margin-bottom:16px}.prose p{color:var(--muted);margin-bottom:20px}.prose ul{color:var(--muted);padding-left:22px}.rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-block:45px}.rate{border:1px solid var(--line);padding:32px}.rate strong{font:3.1rem var(--serif)}.rate p{margin-top:17px;font-size:.9rem}.faq{margin-top:45px}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:1.1rem;cursor:pointer;padding-right:25px}.faq p{font-size:.9rem;padding-top:16px}.project-list{display:grid;grid-template-columns:1fr 1fr;gap:45px}.project-list .project-card img{height:420px}.project-list .project-card:last-child{grid-column:1/-1;max-width:750px;margin-top:35px}.tag{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.service-note{margin-top:35px;padding:25px;border-left:2px solid var(--accent);background:var(--cream);font-size:.88rem}.no-js-note{padding:12px 0}
@media(min-width:1650px){.hero-image>img{height:610px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.nav{gap:20px}.hero-grid{gap:30px;grid-template-columns:.9fr 1.1fr}.hero-image>img{height:490px}.hero h1{font-size:5.2vw}.hero-bottom{align-items:flex-start}.service-inline{gap:16px}.about{gap:55px;padding-inline:35px}.process{gap:50px}.project-card img{height:390px}.project-card.tall img{height:470px}.section{padding-block:80px}.contact-layout{gap:50px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:79px;justify-content:space-between}.brand strong{font-size:1.5rem}.brand img{width:36px;height:36px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:79px;left:0;right:0;padding:24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav>a{padding:14px 6px}.nav .button{margin-top:12px}.hero{padding-top:36px}.hero-grid{display:flex;flex-direction:column;gap:6px;align-items:stretch}.hero-copy{padding-bottom:28px}.hero h1{font-size:clamp(3.7rem,11.8vw,5.5rem);max-width:560px}.eyebrow{font-size:.62rem;margin-bottom:20px}.hero .intro{max-width:430px;font-size:.93rem;margin-top:20px}.hero .actions{margin-top:25px}.hero-image>img{height:auto;aspect-ratio:1.22;object-position:40% center}.image-note{left:12px;bottom:12px;padding:9px 11px;font-size:.52rem;gap:12px}.hero-bottom{margin-top:28px;padding-block:18px;display:block}.service-inline{margin-top:12px;gap:8px 20px;font-size:.7rem}.section{padding-block:62px}.section-heading{display:block;margin-bottom:30px}.section-heading p{margin-top:24px}.work-grid{grid-template-columns:1fr;gap:35px}.project-card img{height:auto;aspect-ratio:1.3}.project-card.tall{padding-top:0}.project-card.tall img{height:auto;aspect-ratio:1;object-position:center 34%}.project-card .caption{padding-top:18px}.project-card h3{font-size:1.95rem}.work-foot{font-size:.68rem}.services-grid{grid-template-columns:1fr;gap:0}.service-row{padding-block:23px}.service-row h3{font-size:1.75rem}.process{grid-template-columns:1fr;gap:38px}.process figure img{aspect-ratio:1.2}.steps{margin-top:30px}.steps li:last-child{margin-bottom:0}.indoor{grid-template-columns:1fr;gap:28px;padding-block:36px}.indoor h2{font-size:2.6rem}.about{grid-template-columns:1fr;padding-inline:0;gap:43px}.about .portrait{max-width:320px;margin-left:13px}.about .portrait img{height:360px}.about .portrait:before{inset:13px 13px -13px -13px}.about h2{font-size:2.8rem}.cta{padding-block:46px}.cta .wrap{align-items:flex-start;flex-direction:column;gap:27px}.cta h2{font-size:2.8rem}.footer-top{flex-direction:column;gap:27px;padding-bottom:35px}.footer-bottom{flex-direction:column;gap:9px}.page-head{padding:42px 0 33px}.page-head h1{font-size:3.3rem}.page-head .lead{font-size:.97rem}.back-link{margin-bottom:27px}.project-hero{aspect-ratio:1.2;object-fit:cover}.project-meta{gap:25px;flex-wrap:wrap;font-size:.73rem}.project-story{grid-template-columns:1fr;gap:28px}.project-gallery{gap:25px;grid-template-columns:1fr;margin-top:30px}.project-gallery figure img{height:auto;max-height:560px;object-fit:contain;background:var(--cream)}.video-section{grid-template-columns:1fr;gap:28px;margin-top:45px}.video-section video{max-height:550px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.inquiry{padding:23px}.field-grid{grid-template-columns:1fr;gap:0}.rate-grid{grid-template-columns:1fr;gap:20px}.project-list{grid-template-columns:1fr;gap:35px}.project-list .project-card img{height:auto;aspect-ratio:1.1}.project-list .project-card:last-child{grid-column:auto;margin-top:0}.prose h2{font-size:1.9rem}.button{min-height:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.review-panel{display:grid;grid-template-columns:1.3fr .8fr;gap:100px;padding:60px 0 95px;border-top:1px solid var(--line)}.review-panel blockquote{font:clamp(2rem,3.3vw,3.2rem)/1.22 var(--serif);letter-spacing:-.035em;margin:0;max-width:620px;text-wrap:balance}.review-cite{font-size:.73rem;color:var(--muted);margin-top:25px;line-height:1.9}.review-numbers{display:grid;grid-template-columns:1fr 1fr;gap:25px}.review-numbers strong{display:block;font:2.4rem var(--serif);line-height:1.2}.review-numbers strong span{font-size:1.15rem;color:var(--accent)}.review-numbers>div>span{display:block;font-size:.7rem;color:var(--muted);margin-top:8px}.review-numbers small{font-size:.64rem;color:var(--muted);align-self:end}@media(max-width:760px){.review-panel{grid-template-columns:1fr;gap:38px;padding:45px 0 55px}.review-panel blockquote{font-size:2.25rem}.review-numbers{gap:25px 35px}.review-numbers strong{font-size:2.2rem}}

/* Main copy stays at least 16px; navigation and form labels at least 14px. */
.hero h1{font-size:clamp(3.2rem,5.1vw,5.4rem);letter-spacing:-.047em}
.eyebrow,.label,.tag,.service-row .number,.work-foot,.process figcaption,
.project-meta span,.review-numbers small,.footer-bottom{font-size:.75rem}
.nav,.service-inline,.text-link,.button,.field label,.footer-links,.back-link,
.project-meta,.project-gallery figcaption,.review-cite,.review-numbers>div>span,
.inquiry .form-note,.inquiry>p,.video-section small,.image-note{font-size:.875rem}
.hero .intro,.section-heading p,.service-row p,.steps p,.indoor p,.about p,
.cta p,.contact-info p,.field input,.field select,.field textarea,.rate p,
.faq p,.service-note,.footer-copy,.page-head .lead{font-size:1rem}
.field input,.field select,.field textarea{scroll-margin-top:24px}
.project-hero{height:auto}.project-planning .button,.next-step-grid .button{white-space:normal}
@media(max-width:900px){.project-planning{grid-template-columns:1fr;gap:30px}.next-step-grid{gap:20px}.hero-bottom{gap:24px;flex-wrap:wrap}}
@media(max-width:760px){
  .hero h1{font-size:clamp(3rem,10.6vw,4.4rem)}
  .hero .intro{font-size:1rem}.hero-bottom .service-inline{margin-top:22px;gap:12px 20px}
  .trust-link{max-width:none}.image-note{font-size:.75rem;flex-wrap:wrap;gap:8px;right:12px}
  .project-actions{gap:20px;margin-bottom:28px}.next-step-grid{grid-template-columns:1fr}
  .next-step-grid article{padding:26px}.next-step-grid .button{width:100%}
  .project-planning{gap:32px}.project-planning .actions{gap:20px;align-items:flex-start}
}
.facts-content{overflow-wrap:anywhere}.fact-date{font-size:.875rem;color:var(--muted)}
.facts-ratings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:28px 0 40px}
.facts-ratings article{border-top:1px solid var(--line);padding-top:24px}.facts-ratings h3{font-size:1.8rem}
.fact-quote{margin:32px 0;padding:24px 0;border-top:1px solid var(--line)}
.fact-quote blockquote{margin:0 0 18px;border-left:3px solid var(--accent);padding-left:22px;font:1.5rem/1.4 var(--serif)}
.fact-quote figcaption{font-size:.875rem}.fact-quote>p{margin-top:12px}
.facts-content details{margin-top:36px;padding:22px 0;border-top:1px solid var(--line)}
.facts-content summary{cursor:pointer;font-weight:600}.facts-content details p{margin-top:16px}
.footer-links{flex-wrap:wrap}
@media(max-width:760px){.facts-ratings{grid-template-columns:1fr;gap:12px}}

/* Keep the whole swing set visible, including its wide outer supports. */
.project-card.playset-card img,
.project-list .project-card.playset-card img {
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
}
.playset-collection .project-hero {
  max-height: none;
  aspect-ratio: 16 / 9;
  object-fit: contain;
}
.playset-gallery figure img {
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
}
.playhouse-feature { background: var(--cream); }
.playset-video-heading { margin-top: 80px; }
.playset-videos { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.playset-videos video { width: 100%; height: auto; max-height: 600px; background: #101d17; }
.playset-videos figcaption { margin-top: 14px; font-size: .875rem; color: var(--muted); }
.playhouse-gallery { align-items: start; }
.playhouse-gallery .playhouse-finished img {
  height: auto;
  max-height: 800px;
  object-fit: contain;
}
.playhouse-progress { display: grid; gap: 32px; }
.playhouse-progress figure img {
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
}
@media (max-width: 760px) {
  .playset-videos { grid-template-columns: 1fr; gap: 32px; }
  .playset-video-heading { margin-top: 52px; }
  .playhouse-gallery .playhouse-finished img { max-height: 620px; }
  .playhouse-progress { gap: 25px; }
}
