:root{--forest:#064431;--forest-dark:#092d24;--red:#c91024;--ink:#172b36;--container:1200px}
.site-topbar{background:var(--forest);color:#fff}
.site-topbar__inner{min-height:39px}
.site-topbar__strapline{color:#fff;font-size:11px;line-height:1.3}
.site-topbar__strapline .nxb-icon{width:14px;height:14px}
.site-header .nxb-container.site-header__main{min-height:112px;padding-block:8px}
.site-header .site-header__main .site-logo img{display:block;width:176px;height:auto;max-width:none;max-height:none;object-fit:contain}
.site-navigation__links>li>a{font-size:clamp(10px,.9vw,13px)}
.site-navigation__cta{background:var(--red);border-color:var(--red);color:#fff}
.nxb-banner--presentation-hero{position:relative;background:var(--forest-dark)}
.nxb-banner--presentation-hero .nxb-banner__layout{display:block;position:relative;max-width:none;min-height:clamp(450px,39vw,640px)}
.nxb-banner--presentation-hero .nxb-banner__media{position:absolute;inset:0;z-index:0;min-height:0;width:100%;overflow:hidden;background:var(--forest-dark)}
.nxb-banner--presentation-hero .nxb-banner__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.nxb-banner--presentation-hero .nxb-banner__content{position:relative;z-index:1;display:flex;align-items:center;min-height:clamp(450px,39vw,640px);width:100%;padding:55px max(5%,calc((100vw - 1200px)/2));background:linear-gradient(90deg,rgba(3,37,27,.97) 0%,rgba(3,37,27,.81) 28%,rgba(3,37,27,.32) 60%,rgba(3,37,27,0) 100%);color:#fff}
.nxb-banner--presentation-hero .nxb-banner__content::after{display:none}
.nxb-banner--presentation-hero .nxb-banner__content-inner{max-width:min(49vw,620px);margin:0}
.nxb-banner--presentation-hero .nxb-banner__title{font-size:clamp(38px,4.5vw,60px);line-height:1.09;letter-spacing:-.025em}
.nxb-banner--presentation-hero .nxb-banner__eyebrow{letter-spacing:.2em;font-size:12px}
.nxb-banner--presentation-hero .nxb-banner__intro{font-size:clamp(13px,1.2vw,17px);max-width:570px}
.nxb-banner--presentation-hero .nxb-banner__buttons{margin-top:28px}
.nxb-banner--presentation-hero .nxb-banner__button--secondary{border-color:#fff;background:rgba(0,0,0,.14)}
.nxb-banner__button--primary,.nxb-button{background:var(--red);border-color:var(--red);color:#fff}
.nxb-banner__button--primary:hover,.nxb-button:hover{background:#ae0b1d}
.nxb-block--forest{background:var(--forest);color:#fff}
.nxb-block--forest>section{background:transparent}
.nxb-block--forest .nxb-banner--presentation-feature .nxb-banner__content{color:#fff}
.nxb-block--forest .nxb-banner--presentation-feature .nxb-banner__eyebrow{color:#fff}
.nxb-block--forest .nxb-banner--presentation-feature .nxb-banner__button--primary{background:#fff;color:var(--forest);border-color:#fff}
.nxb-block--forest .nxb-banner--presentation-feature .nxb-banner__button--primary:hover{background:#e9f1eb}
.nxb-banner--presentation-feature .nxb-banner__media{overflow:hidden}
.nxb-simple-pods--benefits .nxb-simple-pods__media{width:48px;height:48px;aspect-ratio:1;margin:0 auto 7px;overflow:visible}
.nxb-simple-pods--benefits .nxb-simple-pods__image{width:100%;height:100%;object-fit:contain}
.nxb-simple-pods--benefits .nxb-simple-pods__card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}
.nxb-simple-pods--benefits .nxb-simple-pods__heading{font-weight:700;color:var(--ink)}
.nxb-simple-pods--cards .nxb-simple-pods__card{border:1px solid #e6e9e9;box-shadow:0 2px 5px #172b3610}
.nxb-simple-pods--cards .nxb-simple-pods__media{aspect-ratio:1.46}
.nxb-simple-pods--cards .nxb-simple-pods__content{display:flex;flex-direction:column;align-items:flex-start;min-height:140px}
.nxb-simple-pods--cards .nxb-simple-pods__link{margin-top:auto;background:var(--red);color:#fff;padding:9px 14px;font-size:12px}
.nxb-simple-pods--cards .nxb-simple-pods__link:hover{background:#ae0b1d;text-decoration:none}
.nxb-simple-pods--cards .nxb-simple-pods__link::after{color:#fff}
.rome-style-cards>.nxb-simple-pods__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.rome-style-cards .nxb-simple-pods__media{aspect-ratio:1.6}
.rome-style-cards .nxb-simple-pods__content{min-height:0;padding:8px}
.rome-style-cards .nxb-simple-pods__heading{font-size:12px;line-height:1.2}
.rome-style-cards .nxb-simple-pods__text{font-size:11px}
.rome-style-cards .nxb-simple-pods__link{padding:0;background:transparent;color:var(--red);font-size:11px}
.nxb-collection{padding:18px 0 60px;background:#fff}
.nxb-collection__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.nxb-collection__card{background:#fff;border:1px solid #e5ebea;box-shadow:0 3px 9px #122d2510;overflow:hidden}
.nxb-collection__link{display:block;text-decoration:none}
.nxb-collection__link img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.nxb-collection__title{display:block;padding:14px 16px 0;font-size:18px;font-weight:700}
.nxb-collection__card p{padding:0 16px 18px;margin:7px 0 0;font-size:14px;color:#47555e}
.site-footer{background:#1b292b;color:#fff}
.site-footer__identity img{width:150px;max-height:88px;object-fit:contain}
.site-footer__location{justify-content:flex-start;padding-left:25px}
.site-footer__location h2{font-size:14px;margin:0 0 7px;letter-spacing:0}
.site-footer__location p{white-space:pre-line;color:#e0e9e7;line-height:1.55}
.site-credit img{width:24px!important;height:24px!important;object-fit:contain}
.site-footer__bottom{color:#d6e0dc}
@media(max-width:1100px){.rome-style-cards>.nxb-simple-pods__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-topbar__strapline{max-width:45%;text-align:right}.site-navigation__links{gap:10px}}
@media(max-width:760px){.site-topbar__inner{justify-content:center}.site-topbar__strapline{display:none}.site-header__main{min-height:72px}.site-logo img{width:145px}.nxb-banner--presentation-hero .nxb-banner__layout,.nxb-banner--presentation-hero .nxb-banner__content{min-height:520px}.nxb-banner--presentation-hero .nxb-banner__content{padding:45px 6%;align-items:flex-end;background:linear-gradient(0deg,rgba(3,37,27,.98) 0%,rgba(3,37,27,.75) 51%,rgba(3,37,27,.1) 100%)}.nxb-banner--presentation-hero .nxb-banner__content-inner{max-width:100%}.nxb-banner--presentation-hero .nxb-banner__title{font-size:clamp(30px,8vw,42px)}.nxb-banner--presentation-hero .nxb-banner__intro{font-size:13px}.nxb-banner--presentation-hero .nxb-banner__buttons{gap:8px;margin-top:18px}.nxb-banner__button{padding:11px 14px;font-size:12px}.rome-style-cards>.nxb-simple-pods__grid,.nxb-collection__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__location{padding-left:0}}
@media(max-width:520px){.rome-style-cards>.nxb-simple-pods__grid,.nxb-collection__grid{grid-template-columns:1fr}.nxb-simple-pods--benefits>.nxb-simple-pods__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nxb-simple-pods--benefits .nxb-simple-pods__card{padding:12px;border:0}.site-footer__main{display:grid;grid-template-columns:1fr 1fr;gap:25px}.site-footer__identity,.site-footer__contact,.site-footer__links,.site-footer__location{padding:0;border:0}}

.rome-home-hero .nxb-banner__layout,
.rome-home-hero .nxb-banner__content{min-height:480px}
.rome-home-hero .nxb-banner__content-inner{max-width:700px}
.rome-home-hero .nxb-banner__title{font-size:clamp(36px,3.7vw,49px);line-height:1.08}
.rome-home-hero .nxb-banner__intro{max-width:620px;font-size:14px;line-height:1.45}
.rome-home-hero .nxb-banner__intro p{margin:0 0 .7rem}
.rome-home-hero .nxb-banner__badge{position:absolute;top:auto;right:4%;bottom:6%;z-index:2;max-width:180px;padding:0;border:0;color:#fff;font-family:Georgia,serif;font-size:25px;font-style:italic;text-align:right;transform:rotate(-9deg);text-shadow:0 2px 8px #0009}

.rome-about .nxb-banner__layout{position:relative;display:block;max-width:none;min-height:450px;padding:0}
.rome-about.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__media{position:absolute;inset:0 0 0 auto;width:56%;min-height:450px;height:100%;overflow:hidden;align-self:stretch}
.rome-about.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rome-about .nxb-banner__content{position:relative;z-index:1;width:58%;min-height:450px;padding:42px 9% 38px 5%;background:#fff;color:var(--ink);clip-path:polygon(0 0,100% 0,89% 100%,0 100%)}
.rome-about .nxb-banner__content-inner{max-width:560px}
.rome-about .nxb-banner__title{font-size:clamp(27px,2.7vw,35px);line-height:1.1}
.rome-about .nxb-banner__eyebrow{color:var(--red)}
.rome-about .nxb-banner__intro{font-size:13px;line-height:1.45}
.rome-about .nxb-banner__intro ul{margin:14px 0 0;padding:0;list-style:none}
.rome-about .nxb-banner__intro li{position:relative;margin:5px 0;padding-left:24px}
.rome-about .nxb-banner__intro li::before{position:absolute;top:1px;left:0;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--forest);color:#fff;font-size:11px;content:'✓'}
.rome-benefit-strip{padding:24px 0;background:transparent;color:#fff}
.rome-benefit-strip .nxb-simple-pods__card{padding:8px 18px;border-right:1px solid #ffffff55}
.rome-benefit-strip .nxb-simple-pods__card:last-child{border-right:0}
.rome-benefit-strip .nxb-simple-pods__heading,
.rome-benefit-strip .nxb-simple-pods__text{color:#fff}
.rome-benefit-strip .nxb-simple-pods__icon{color:#fff}
.rome-warm-roof.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__media{position:relative;min-height:310px;height:100%;align-self:stretch}
.rome-warm-roof.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

@media(max-width:760px){
  .rome-home-hero .nxb-banner__layout,.rome-home-hero .nxb-banner__content{min-height:560px}
  .rome-home-hero .nxb-banner__content-inner{max-width:100%}
  .rome-home-hero .nxb-banner__badge{display:none}
  .rome-about .nxb-banner__layout{min-height:0}
  .rome-about .nxb-banner__content{width:100%;min-height:0;padding:35px 6%;clip-path:none}
  .rome-about.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__media{position:relative;width:100%;min-height:300px;height:300px}
  .rome-benefit-strip .nxb-simple-pods__card:nth-child(2){border-right:0}
}
/* Guardian Warm Roof and the Conservatories submenu. */
.site-navigation__links>li:has(.site-navigation__submenu){display:flex;align-items:center;gap:5px}
.site-navigation__submenu summary{display:flex;align-items:center;justify-content:center;list-style:none;cursor:pointer;width:28px;min-height:36px;font-size:20px;color:var(--forest-dark)}
.site-navigation__submenu summary::-webkit-details-marker{display:none}
.site-navigation__submenu summary{line-height:1}
.site-navigation__chevron{display:block;width:16px;height:16px;transition:transform .15s ease}
.site-navigation__submenu[open]>summary .site-navigation__chevron{transform:rotate(180deg)}
.site-navigation__submenu:not([open])>ul{display:none}
.site-navigation__submenu summary:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.site-navigation__submenu>ul{top:100%;left:0;min-width:220px;margin:0;border-top:3px solid var(--red)}
.site-navigation__submenu ul ul{position:static;box-shadow:none;margin:0;padding:0 0 0 12px;min-width:0}
.site-navigation__submenu a{text-decoration:none;white-space:nowrap}
.site-navigation__submenu a:hover,.site-navigation__submenu a:focus-visible,.site-navigation__submenu a[aria-current=page]{background:#f2f6f4;color:var(--forest-dark)}
.rome-warm-roof .nxb-banner__image{object-position:center}
.rome-warm-roof-hero .nxb-banner__title{font-size:clamp(34px,4vw,54px)}
@media(max-width:760px){
  .site-topbar__contact{gap:12px;flex-wrap:wrap;justify-content:center}
  .site-topbar__contact a{font-size:11px;white-space:nowrap}
  .site-topbar__inner{padding-block:6px}
  .rome-warm-roof.nxb-banner--presentation-feature.nxb-banner--size-original .nxb-banner__media{height:300px;min-height:300px}
}

/* Warm Roof page spacing and typography. */
#site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__content{width:min(90%,var(--container));padding:54px 0}
#site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__eyebrow{font-size:12px;line-height:1.5}
#site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__title{font-size:clamp(34px,4vw,52px);line-height:1.12;text-wrap:balance}
#site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__intro p{font-size:16px;line-height:1.65}
#site-content:has(.rome-warm-roof-hero) .nxb-block--simplepods{padding-block:30px;background:#f3f7f5}
#site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__heading{font-size:16px;line-height:1.3;white-space:normal}
#site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__text{font-size:14px;line-height:1.5}
#site-content:has(.rome-warm-roof-hero) .page-content-shell__main>.nxb-block--gridlayout{padding-block:56px}
#site-content:has(.rome-warm-roof-hero) .page-content-shell__main>.nxb-block--gridlayout:last-child{background:#f3f7f5}
#site-content:has(.rome-warm-roof-hero) .nxb-grid-layout{--nxb-grid-column-gap:48px}
#site-content:has(.rome-warm-roof-hero) .nxb-grid-layout__row>.umb-block-grid__area-container{align-items:center}
#site-content:has(.rome-warm-roof-hero) .umb-block-grid__area,
#site-content:has(.rome-warm-roof-hero) .umb-block-grid__area>.umb-block-grid__layout-container{height:auto}
#site-content:has(.rome-warm-roof-hero) .umb-block-grid__area .nxb-block{padding:0}
#site-content:has(.rome-warm-roof-hero) .nxb-gallery{margin:0}
#site-content:has(.rome-warm-roof-hero) .nxb-gallery__link{border-radius:4px}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__content{font-size:16px;line-height:1.65}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__content h2{margin:0 0 18px;font-size:clamp(25px,2.5vw,32px);line-height:1.2;letter-spacing:-.025em;text-wrap:balance}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__content h2:not(:first-child){margin-top:30px}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__content p{margin:0 0 16px;font-size:16px;line-height:1.65}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__content p:last-child{margin-bottom:0}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__outro{margin-top:24px}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__buttons{margin-top:0}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__button{gap:14px;max-width:100%;min-height:48px;padding:12px 20px;font-size:14px;line-height:1.45}
#site-content:has(.rome-warm-roof-hero) .nxb-text-block__button::after{content:'\2192';flex-shrink:0;font-size:20px;line-height:1}
@media(max-width:767px){
  #site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__content{width:88%;padding:40px 0}
  #site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__content-inner{max-width:100%}
  #site-content:has(.rome-warm-roof-hero) .rome-warm-roof-hero .nxb-banner__title{font-size:clamp(32px,8vw,42px)}
  #site-content:has(.rome-warm-roof-hero) .page-content-shell__main>.nxb-block--gridlayout{padding-block:36px}
  #site-content:has(.rome-warm-roof-hero) .nxb-grid-layout{--nxb-grid-column-gap:28px}
  #site-content:has(.rome-warm-roof-hero) .nxb-grid-layout__row>.umb-block-grid__area-container{gap:28px}
  #site-content:has(.rome-warm-roof-hero) .nxb-block--simplepods{padding-block:12px}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits>.nxb-simple-pods__grid{grid-template-columns:1fr;gap:0}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__card{flex-direction:row;align-items:center;gap:16px;padding:18px 0;border:0;border-bottom:1px solid #d4dade;text-align:left}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__card:last-child{border-bottom:0}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__icon{flex-shrink:0}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__content{align-items:flex-start;padding:0}
  #site-content:has(.rome-warm-roof-hero) .nxb-simple-pods--benefits .nxb-simple-pods__heading{margin-bottom:4px}
  body:has(.rome-warm-roof-hero) .site-footer__main>*{min-width:0}
  body:has(.rome-warm-roof-hero) .site-footer__contact span{min-width:0;overflow-wrap:anywhere}
}

@media(max-width:992px){
  .site-header .nxb-container.site-header__main{min-height:92px}
  .site-header .site-header__main .site-logo img{width:140px}
  .site-navigation__links>li:has(.site-navigation__submenu){flex-wrap:wrap}
  .site-navigation__links>li:has(.site-navigation__submenu)>a{flex:1}
  .site-navigation__submenu{display:contents}
  .site-navigation__submenu::details-content{display:contents}
  .site-navigation__submenu>summary{width:44px;min-height:44px}
  .site-navigation__submenu>ul{position:static;width:100%;min-width:0;flex-basis:100%;box-shadow:none;border-top:0;border-left:3px solid var(--red);padding:0 8px;margin:0 0 10px}
}
