/* Discrete testimonials, using the existing iPosatori typography. */
body.iposatori-modern.ip-complete .site-reviews{background:var(--paper);border-top:1px solid var(--line);padding:50px 5%}
body.iposatori-modern.ip-complete .site-reviews .section-title{margin-bottom:26px;align-items:center}
body.iposatori-modern.ip-complete .site-reviews .section-title h2{font-size:38px;line-height:1.1}
body.iposatori-modern.ip-complete .site-reviews .section-title>p{font-size:13px;line-height:1.7;max-width:480px}
body.iposatori-modern.ip-complete .site-reviews .section-title .kicker{font-size:9px;margin-bottom:10px}
body.iposatori-modern.ip-complete .site-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.iposatori-modern.ip-complete .site-review{margin:0;padding:22px;background:#f5f3ed;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
body.iposatori-modern.ip-complete .site-review-person{display:flex;align-items:center;gap:12px;margin-bottom:16px}
body.iposatori-modern.ip-complete .site-review-person img{width:44px;height:44px;flex:0 0 44px;border-radius:50%;object-fit:cover}
body.iposatori-modern.ip-complete .site-review-person>div{display:grid;gap:3px;min-width:0}
body.iposatori-modern.ip-complete .site-review-person strong{font-size:14px;line-height:1.4;font-weight:600}
body.iposatori-modern.ip-complete .site-review-person span{font-size:11px;line-height:1.5;color:var(--muted)}
body.iposatori-modern.ip-complete .site-review blockquote{margin:0;border:0;padding:0;font-size:18px;line-height:1.5;font-weight:500}
body.iposatori-modern.ip-complete .site-review blockquote p{margin:0}
body.iposatori-modern.ip-complete .site-review-summary{font-size:13px;line-height:1.75;color:var(--muted);margin:10px 0 18px}
body.iposatori-modern.ip-complete .site-review figcaption{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:7px;font-size:11px;line-height:1.5;color:var(--muted)}
body.iposatori-modern.ip-complete .site-review figcaption a{font:9px/1.6 var(--mono);color:var(--muted);text-underline-offset:4px}
body.iposatori-modern.ip-complete .site-reviews>.caption-note{font-size:10px;margin-top:18px}
body.iposatori-modern.ip-complete .site-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}
body.iposatori-modern.ip-complete .site-gallery-help{font:11px/1.7 var(--mono);color:#c2beb4;margin:0 0 25px}
body.iposatori-modern.ip-complete .site-gallery figure{margin:0;min-width:0}
body.iposatori-modern.ip-complete .site-gallery-open{display:block;position:relative;padding:0;background:#292a2b;border:0;width:100%;cursor:zoom-in;overflow:hidden}
body.iposatori-modern.ip-complete .site-gallery-open img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .25s}
body.iposatori-modern.ip-complete .site-gallery-open:hover img{transform:scale(1.035)}
body.iposatori-modern.ip-complete .site-gallery-zoom{position:absolute;right:10px;bottom:10px;background:var(--amber);color:var(--ink);width:32px;height:32px;display:grid;place-items:center;font-size:20px}
body.iposatori-modern.ip-complete .site-gallery figcaption{display:flex;gap:15px;padding-top:15px;font-size:14px;line-height:1.65;color:#efede7}
body.iposatori-modern.ip-complete .site-gallery-number{font:11px/2 var(--mono);color:var(--amber)}
body.iposatori-modern.ip-complete .site-archive>.caption-note{color:#c2beb4;margin-top:35px}
body.iposatori-modern.ip-complete .site-photo-dialog{padding:0;border:1px solid #565248;width:min(1200px,94vw);max-width:94vw;max-height:94vh;background:#17181a;color:#f3f0e7;overflow:auto}
body.iposatori-modern.ip-complete .site-photo-dialog::backdrop{background:#000d}
body.iposatori-modern.ip-complete .site-photo-bar,body.iposatori-modern.ip-complete .site-photo-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:20px}
body.iposatori-modern.ip-complete .site-photo-bar{font:11px/1.5 var(--mono);border-bottom:1px solid #3b3933}
body.iposatori-modern.ip-complete .site-photo-dialog button{border:1px solid #6a6354;background:transparent;color:#f3f0e7;padding:10px 16px;font:inherit;cursor:pointer;flex-shrink:0}
body.iposatori-modern.ip-complete .site-photo-dialog button:hover{border-color:var(--amber);color:var(--amber)}
body.iposatori-modern.ip-complete #site-photo-large{display:block;width:100%;height:min(68vh,800px);object-fit:contain;background:#111}
body.iposatori-modern.ip-complete #site-photo-caption{font-size:15px;line-height:1.5;margin:0;text-align:center}
body.iposatori-modern.ip-complete .site-gallery-open:focus-visible,body.iposatori-modern.ip-complete .site-photo-dialog button:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
@media(max-width:1050px){body.iposatori-modern.ip-complete .site-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body.iposatori-modern.ip-complete .site-review-grid{grid-template-columns:1fr;gap:14px}body.iposatori-modern.ip-complete .site-gallery{gap:25px 15px}body.iposatori-modern.ip-complete .site-gallery figcaption{font-size:12px;gap:8px}body.iposatori-modern.ip-complete .site-photo-footer{padding:12px;gap:10px}body.iposatori-modern.ip-complete .site-photo-dialog button{padding:10px 12px}body.iposatori-modern.ip-complete #site-photo-large{height:60vh}}
@media(prefers-reduced-motion:reduce){body.iposatori-modern.ip-complete .site-gallery-open img{transition:none}}

body.iposatori-modern.ip-complete .site-finished .site-gallery figcaption{color:var(--ink)}
body.iposatori-modern.ip-complete .site-finished .site-gallery-help{color:var(--muted)}
body.iposatori-modern.ip-complete .site-gallery-nav{display:flex;gap:26px;flex-wrap:wrap;margin:0 0 24px;font:11px/1.7 var(--mono)}
body.iposatori-modern.ip-complete .site-gallery-nav a{border-bottom:1px solid var(--line);padding-bottom:8px}
body.iposatori-modern.ip-complete .real-photo-teaser{padding:65px 5%;border-top:1px solid var(--line)}
body.iposatori-modern.ip-complete .real-photo-teaser h2{font-size:48px}
body.iposatori-modern.ip-complete .real-photo-teaser .section-title>p{font-size:16px}
body.iposatori-modern.ip-complete .real-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body.iposatori-modern.ip-complete .real-photo-grid:has(figure:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}
body.iposatori-modern.ip-complete .real-photo-grid figure{margin:0;min-width:0}
body.iposatori-modern.ip-complete .real-photo-grid img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
body.iposatori-modern.ip-complete .real-photo-grid figcaption{font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}
body.iposatori-modern.ip-complete .real-photo-teaser>.plain-link{margin-top:28px}
@media(max-width:760px){body.iposatori-modern.ip-complete .site-reviews .section-title h2{font-size:33px}body.iposatori-modern.ip-complete .site-reviews .section-title>p{margin-top:0}body.iposatori-modern.ip-complete .real-photo-grid,body.iposatori-modern.ip-complete .real-photo-grid:has(figure:nth-child(3)){grid-template-columns:1fr}body.iposatori-modern.ip-complete .real-photo-teaser h2{font-size:40px}}

/* Three user-supplied houses, each with its own set of views. */
body.iposatori-modern.ip-complete .new-house-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0 0 58px;font-size:14px;line-height:1.5}
body.iposatori-modern.ip-complete .new-house-nav a{border-bottom:1px solid var(--line);padding:15px 0;display:flex;align-items:start;gap:15px;text-decoration:none}
body.iposatori-modern.ip-complete .new-house-nav span{font:11px/1.8 var(--mono);color:#8c5b17}
body.iposatori-modern.ip-complete .new-house-story{padding:60px 0 65px;border-top:1px solid var(--line);scroll-margin-top:24px}
body.iposatori-modern.ip-complete .new-house-main{display:grid;grid-template-columns:1.15fr 1fr;gap:6%;align-items:start}
body.iposatori-modern.ip-complete .new-house-copy .kicker{font-size:10px;line-height:1.7;margin:0 0 19px}
body.iposatori-modern.ip-complete .new-house-copy h3{font-size:clamp(34px,3.4vw,56px);line-height:1.07;margin:0 0 24px}
body.iposatori-modern.ip-complete .new-house-copy>p:not(.kicker):not(.new-house-views){font-size:15px;line-height:1.85;color:var(--muted);margin:18px 0}
body.iposatori-modern.ip-complete .new-house-features{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-wrap:wrap;gap:8px}
body.iposatori-modern.ip-complete .new-house-features li{font:10px/1.6 var(--mono);border:1px solid var(--line);padding:7px 9px}
body.iposatori-modern.ip-complete .new-house-photo{margin:0;min-width:0}
body.iposatori-modern.ip-complete .new-house-cover img{aspect-ratio:16/10;object-position:center center}
body.iposatori-modern.ip-complete .new-house-photo figcaption{font-size:12px;line-height:1.65;color:var(--muted);margin-top:12px}
body.iposatori-modern.ip-complete .new-house-views{font:10px/1.8 var(--mono);margin:25px 0 0;color:#79501a}
body.iposatori-modern.ip-complete .new-house-views-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:36px}
body.iposatori-modern.ip-complete .new-house-views-grid.single-view{grid-template-columns:minmax(0,1fr);width:54%}
body.iposatori-modern.ip-complete .new-house-views-grid.single-view img{aspect-ratio:16/9}
body.iposatori-modern.ip-complete .new-house-archive{border-top:1px solid var(--line);padding-top:70px;margin-top:5px}
body.iposatori-modern.ip-complete .new-house-archive .section-title h2{font-size:44px}
body.iposatori-modern.ip-complete .site-gallery-open:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
@media(max-width:1050px){body.iposatori-modern.ip-complete .new-house-main{grid-template-columns:1fr;gap:30px}body.iposatori-modern.ip-complete .new-house-cover img{aspect-ratio:16/10}body.iposatori-modern.ip-complete .new-house-views-grid.single-view{width:65%}}
@media(max-width:760px){body.iposatori-modern.ip-complete .new-house-nav{grid-template-columns:1fr;gap:0;margin-bottom:30px}body.iposatori-modern.ip-complete .new-house-story{padding:35px 0 42px;scroll-margin-top:14px}body.iposatori-modern.ip-complete .new-house-copy h3{font-size:39px}body.iposatori-modern.ip-complete .new-house-views-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;margin-top:25px}body.iposatori-modern.ip-complete .new-house-views-grid.single-view{width:100%}body.iposatori-modern.ip-complete .new-house-copy>p:not(.kicker):not(.new-house-views){font-size:15px;line-height:1.8}body.iposatori-modern.ip-complete .new-house-archive{padding-top:40px}}
