/* Power Ras V14 — editorial media, responsive natural wrapping and actual-work photo gallery. */
body.v9-site main :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
/* Preserve the established size and alignment rules of V12.6 / V13. */
body.v9-site .v9-home-hero h1,body.v9-site .v9-works-hero h1{max-width:100%;}
.pr-v14-stock-figure{position:relative;margin:0;min-height:360px;overflow:hidden;border-radius:18px;background:#14211f;}
.pr-v14-stock-figure img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;object-position:center;}
.pr-v14-stock-figure figcaption,.pr-v14-media-disclosure{position:absolute;z-index:4;right:12px;bottom:12px;color:#fff;background:rgba(9,22,19,.86);border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:6px 11px;font:600 11px/1.3 system-ui,sans-serif;letter-spacing:.03em;}
body.v9-site .v9-service-showcase--charge{background:#0a1716;color:#fff;}
body.v9-site .v9-service-showcase--charge .v9-service-showcase__media{position:absolute;inset:0;background:#0a1716;}
body.v9-site .v9-service-showcase--charge .v9-service-showcase__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
body.v9-site .v9-service-showcase--charge .v9-service-showcase__media:after{background:linear-gradient(90deg,rgba(5,18,15,.78),rgba(5,18,15,.10));pointer-events:none;}
body.v9-site .v9-service-showcase--security figure{position:relative;}
body.v9-site .v9-service-showcase--security .pr-v14-stock-figure{min-height:320px;}
body.v9-site .v9-service-showcase--security .pr-v14-stock-figure img{min-height:320px;max-height:450px;}
body.v9-site :is(.v9-security-hero,.v9-charge-hero) figure{position:relative;}
body.v9-site :is(.v9-security-hero,.v9-charge-hero) figure .pr-v14-media-disclosure{right:18px;bottom:18px;}
.pr-v14-project{display:flex;flex-direction:column;}
.pr-v14-project .v10-work-card__body{display:flex;flex-direction:column;flex:1;}
.pr-v14-project .v10-work-card__body p{margin-bottom:17px;}
.pr-v14-gallery{margin-top:auto;padding-top:15px;border-top:1px solid #d9e5e1;}
.pr-v14-gallery summary{cursor:pointer;font-size:13px;font-weight:800;color:#126a60;list-style:none;}
.pr-v14-gallery summary:after{content:" +";margin-left:8px;}
.pr-v14-gallery[open] summary:after{content:" −";}
.pr-v14-gallery summary::-webkit-details-marker{display:none;}
.pr-v14-gallery summary:focus-visible{outline:3px solid #31b3a0;outline-offset:4px;}
.pr-v14-gallery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;}
.pr-v14-gallery__grid figure{margin:0;}
.pr-v14-gallery__grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:9px;}
/* Stop the old dark-service decoration from hiding or recoloring newly provided stock photography. */
@media(max-width:800px){
 .pr-v14-stock-figure,.pr-v14-stock-figure img{min-height:245px!important;}
 .pr-v14-gallery__grid img{aspect-ratio:3/2;}
 body.v9-site .v9-service-showcase--charge .v9-service-showcase__media{position:relative;inset:auto;height:300px;min-height:300px;}
}
@media(max-width:480px){.pr-v14-gallery__grid{grid-template-columns:1fr}}

/* V14 final visual audit: keep the Lavori hero headline in its own reading column. */
body.v9-site .v9-works-hero__copy h1{max-width:min(760px,59vw);font-size:clamp(54px,6vw,86px);line-height:1.03;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:normal;}
@media (max-width:800px){
 body.v9-site .v9-works-hero{min-height:590px;}
 body.v9-site .v9-works-hero__copy{padding-top:94px;}
 body.v9-site .v9-works-hero__copy h1{max-width:100%;font-size:clamp(43px,10.7vw,63px);line-height:1.05;}
 body.v9-site .v9-works-hero__mosaic{opacity:.70;}
 body.v9-site .v9-works-hero:after{background:linear-gradient(90deg,rgba(5,13,11,.85),rgba(5,13,11,.54));}
}


/* V15 — final static graphic corrections before motion pass. */
body.v9-site .v9-nav a.is-active:after{right:100%;}
body.v9-site .v9-nav a:hover:after,body.v9-site .v9-nav a:focus-visible:after{right:0;}
body.v9-site .v9-nav a.is-active{color:var(--accent-dark);}
body.v9-site .pr-v14-media-disclosure,body.v9-site .pr-v14-stock-figure figcaption{display:none!important;}
@media (min-width:801px){
 body.v9-site .v9-service-showcase--charge{position:relative;min-height:660px;background:#0a1716;}
 body.v9-site .v9-service-showcase--charge .v9-service-showcase__media{position:absolute;inset:0;min-height:660px;}
 body.v9-site .v9-service-showcase--charge .v9-service-showcase__media img{width:100%;height:100%;min-height:660px;object-fit:cover;}
 body.v9-site .v9-service-showcase--charge .v9-service-showcase__content{position:relative;z-index:2;min-height:660px;}
}


/* V16 — typography cleanup before motion pass. */
/* Never split words with automatic hyphenation; wrapping may happen only at normal word boundaries. */
body.v9-site main :where(h1,h2,h3,h4,p,li,span,strong,b,a,small){
  -webkit-hyphens:none!important;
  hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
/* Do not rebalance headings into editorial/manual-looking line breaks. */
body.v9-site main :is(h1,h2,h3,h4){text-wrap:wrap!important;}
/* Casa: action links use the Power Ras turquoise, not black. */
body.v9-site .v10-house-map article>a{color:var(--accent)!important;text-decoration-color:var(--accent)!important;}
body.v9-site .v10-house-map article>a:hover,body.v9-site .v10-house-map article>a:focus-visible{color:var(--accent-dark)!important;}
