/* Owner review: quieter branding, generous photography and an editorial journey. */
.official-logo{display:block;width:100%;height:100%;object-fit:contain}
.main-header .main-logo{width:152px;height:66px;display:flex;align-items:center}
.main-logo .official-logo{height:66px}
.site-bottom.home-footer .footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:5vw;align-items:center}
.site-bottom.home-footer .footer-logo{width:205px;height:104px;margin-bottom:19px}
.site-bottom.home-footer .footer-tagline{font-size:25px;line-height:1.25;max-width:300px;margin-bottom:20px}
.site-bottom.home-footer .footer-grid nav{margin-top:22px;align-self:center;padding:0;gap:14px}
.site-bottom.home-footer{padding-top:46px;padding-bottom:28px}
.site-bottom.home-footer .bottom-line{margin-top:32px}
.site-bottom .footer-logo .official-logo{height:100%;max-height:130px}
.site-bottom:not(.home-footer) .footer-logo{width:180px;height:96px}
.gateway .division-logo .official-logo{filter:none}
.company-footer .company-logo-pair{display:flex;align-items:center;gap:36px}
.company-footer .company-logo-pair a{display:block;width:180px;height:96px}
.company-footer .company-footer-brands>span{margin-top:20px}
.company-faith{background:#e9eee1;display:grid;grid-template-columns:1.4fr 1fr;gap:12px 7vw;align-items:center;border-top:1px solid #d4ddcb}
.company-faith .section-eyebrow{grid-column:1/-1;margin:0 0 18px}
.company-story .company-faith h2{font:400 clamp(31px,4vw,55px)/1.18 Georgia,serif;letter-spacing:-.025em;margin:0}
.company-story .company-faith>p:last-child{font-size:16px;max-width:460px;line-height:1.8}
.simple-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:4vw}
.simple-steps h3{font-size:23px;line-height:1.25;max-width:250px}
.simple-steps article{padding-top:20px;border-top:1px solid #ccd7c9}
.customer-stories .review-heading{margin-bottom:25px}
.customer-stories .testimonials:hover .review-track{animation-play-state:running}
.customer-stories.reviews-paused .review-track,.customer-stories .testimonials:focus-within .review-track{animation-play-state:paused}
.customer-stories .review-source{font-size:10px;margin-top:12px;text-underline-offset:3px;color:#516556}
.customer-stories .testimonials:focus-visible{outline:2px solid #967544;outline-offset:6px}
.homes-inspiration{padding:68px 0 25px;display:grid;grid-template-columns:1.12fr 1fr;gap:26px}
.homes-dream-copy{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;column-gap:8vw;align-items:center;margin-bottom:15px}
.homes-dream-copy .kicker{grid-column:1/-1}
.homes-dream-copy h1{font:400 clamp(40px,5.5vw,78px)/1.03 Georgia,serif;letter-spacing:-.04em;margin:8px 0 25px}
.homes-dream-copy>p:not(.kicker){font-size:18px;line-height:1.8;max-width:410px;color:#61766d}
.homes-dream-copy .text-link{grid-column:1/-1;justify-self:start;font-size:13px;text-underline-offset:7px}
.homes-beach,.homes-veranda{position:relative;display:block;overflow:hidden;border-radius:4px;background:#173c35;min-width:0;color:white;text-decoration:none}
.homes-beach{grid-row:2/4}
.homes-beach img{width:100%;height:100%;min-height:630px;object-fit:cover;object-position:52% center}
.homes-veranda img{display:block;width:100%;height:340px;object-fit:cover}
.homes-beach>span,.homes-veranda>span{position:absolute;bottom:0;left:0;right:0;padding:75px 28px 24px;background:linear-gradient(transparent,#0b242ccb);font:400 30px/1.2 Georgia,serif}
.homes-beach b,.homes-veranda b{display:block;font:500 11px/1.5 'Segoe UI',sans-serif;margin-top:12px}
.homes-inspiration a img{transition:transform .7s}
.homes-inspiration a:hover img{transform:scale(1.025)}
.homes-welcome{padding:22px 20px 20px}
.homes-welcome h2{font:400 33px/1.15 Georgia,serif;letter-spacing:-.025em}
.homes-welcome p:not(.kicker){font-size:14px;color:#61766d;line-height:1.8}
.homes-welcome a{font-size:12px;text-underline-offset:5px}
.homes-design-heading{max-width:none;border-top:1px solid #d8dfd4;margin-top:55px}
.homes-design-heading h2{font:400 clamp(34px,4vw,54px)/1.1 Georgia,serif;margin:14px 0 24px}
.house-premium-intro{display:block}
.house-premium-intro .house-hero-photo{display:block;width:100%;max-width:none}
.house-premium-intro .house-hero-photo>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;border-radius:4px}
.house-premium-intro .big-copy{display:grid;grid-template-columns:1fr 1fr;gap:10px 5vw;padding:40px 2vw 20px;align-items:start}
.house-premium-intro .big-copy>.kicker{grid-column:1/-1;margin-bottom:0}
.house-premium-intro .big-copy h2{margin-top:0}
.house-premium-intro .big-copy>p:not(.kicker){grid-column:2;grid-row:3}
.house-premium-intro .big-copy>ul{grid-column:2;grid-row:2;padding-left:18px;margin-top:0;line-height:1.8}
.house-premium-intro .big-copy>.btn{justify-self:start;align-self:start;grid-column:1;grid-row:3}
.house-premium-intro .big-copy>.button-row{grid-column:1/-1;margin-top:0}
.roofing-hero:not([data-gallery]){min-height:660px}
.roofing-hero:not([data-gallery]) .hero-copy{max-width:760px}

/* A single photograph and idea at a time; the full catalog stays at the side. */
.finish-journey-page{padding:55px 5vw 75px}
.journey-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:6vw;align-items:center;max-width:1440px;margin:0 auto 40px}
.journey-heading h1{font:400 clamp(38px,4.4vw,64px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:14px 0 0}
.journey-heading>p{font-size:16px;line-height:1.8;color:#60736a;max-width:430px;margin:0}
.finish-journey{display:grid;grid-template-columns:185px minmax(0,1fr);gap:4vw;max-width:1440px;margin:auto;align-items:start}
.journey-sidebar{position:sticky;top:25px;padding-top:7px}
.journey-sidebar>.kicker{font-size:9px;letter-spacing:.13em;margin-bottom:18px}
#journey-chapters{display:flex;flex-direction:column;gap:3px}
#journey-chapters button{font:inherit;font-size:13px;line-height:1.3;text-align:left;padding:13px 0 13px 14px;border:0;border-left:2px solid transparent;color:#617569;background:transparent;cursor:pointer}
#journey-chapters button[aria-current=true]{color:#193c32;border-left-color:#193c32;font-weight:600}
#journey-chapters button:hover{background:#e9eee4}
.journey-catalog{display:flex;align-items:center;gap:15px;border-top:1px solid #d4dccf;margin-top:28px;padding-top:25px;text-decoration:none;font-size:12px;line-height:1.5}
.journey-catalog img{width:62px;height:80px;object-fit:contain;box-shadow:3px 4px 9px #17352b20}
.journey-catalog b{display:block;font-size:20px;font-weight:400;margin-top:4px}
.journey-stage{min-width:0;display:flex;flex-direction:column}
.journey-image{height:clamp(350px,45vw,540px);max-height:58svh;background:#e7ede4;border-radius:5px;overflow:hidden;touch-action:pan-y;display:flex;align-items:center;justify-content:center}
.journey-image svg,.journey-image img{width:100%;height:100%;display:block;object-fit:contain}
.journey-slide-controls{order:-1;display:flex;align-items:center;justify-content:space-between;padding:0 0 14px;gap:20px}
.journey-slide-controls button{border:1px solid #bdcbbd;background:transparent;color:#244c3a;border-radius:50%;width:43px;height:43px;font-size:21px;cursor:pointer}
.journey-slide-controls button:hover{background:#234b3b;color:white}
.journey-slide-controls p{font-size:11px;letter-spacing:.04em;color:#64766b;text-align:center}
.journey-caption{display:flex;justify-content:space-between;gap:30px;padding:25px 0 18px;align-items:start}
.journey-caption .kicker{font-size:9px;margin:0 0 11px}
.journey-caption h2{font:400 clamp(27px,3vw,42px)/1.15 Georgia,serif;letter-spacing:-.02em;margin:0 0 16px}
.journey-caption p:not(.kicker){font-size:14px;line-height:1.8;color:#63756b;max-width:650px}
.journey-save{white-space:nowrap;padding:10px 0;background:transparent;border:0;border-bottom:1px solid #b9c8b7;font:inherit;font-size:12px;cursor:pointer;color:#234b3b}
.journey-save[aria-pressed=true]{font-weight:700}
.journey-details{border-top:1px solid #d5ddcf;border-bottom:1px solid #d5ddcf}
.journey-details summary{cursor:pointer;padding:18px 0;display:flex;align-items:center;justify-content:space-between;font-size:13px}
.journey-details summary span{font-size:22px}
.journey-details[open] summary span{transform:rotate(45deg)}
.journey-detail-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:25px;padding:0 0 24px}
.journey-detail-inner label{font-size:11px}
.journey-detail-inner select{display:block;margin-top:8px;width:100%;padding:13px 10px;min-height:46px;background:#fffef9;border:1px solid #c9d5c4;color:#193c32;border-radius:3px;font:inherit}
.journey-detail-inner .button-row{margin-top:15px;gap:20px;font-size:12px}
.journey-detail-inner .small-note{margin-top:0}
.journey-saved{max-width:1440px;margin:55px auto 0;border-top:1px solid #ced9c8;padding:28px 0 0;display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.journey-saved[hidden]{display:none}
.journey-saved>div{flex:1;min-width:230px}.journey-saved p{font-size:12px;line-height:1.6;color:#617363}
.journey-saved button{border:0;background:none;text-decoration:underline;font:inherit;font-size:11px;cursor:pointer}
.journey-saved small{width:100%;font-size:10px;color:#63776a}
.finish-journey-page button:focus-visible,.finish-journey-page a:focus-visible,.journey-image:focus-visible,.catalog-reader button:focus-visible{outline:2px solid #97713f;outline-offset:5px}

/* Full-width continuous reading, with a compact floating page finder. */
.catalog-reader{background:#e3e8e1;color:#193c32}
.reader-top{position:sticky;top:0;z-index:25;background:#f8f7efed;backdrop-filter:blur(12px);display:flex;align-items:center;gap:24px;padding:15px 3vw;border-bottom:1px solid #c7d2c2;min-height:74px}
.reader-top h1{font:400 20px/1.2 Georgia,serif;margin:0 auto 0 0;letter-spacing:-.02em}
.reader-top>a{font-size:11px;text-decoration:none;white-space:nowrap}
.reader-top label{width:min(300px,27vw)}
.reader-top select{font:inherit;font-size:11px;display:block;width:100%;padding:10px;border:1px solid #c2cebd;border-radius:3px;background:#fffef7;color:#234b3b}
.reader-top button{font:inherit;font-size:11px;white-space:nowrap;border:0;background:transparent;cursor:pointer;color:#234b3b;padding:8px}
.reader-pages{width:min(1545px,100%);margin:auto}
.reader-sheet{margin:0 0 25px;scroll-margin-top:var(--reader-offset,100px)}
.reader-sheet>a,.reader-sheet img{display:block;width:100%;height:auto}
.reader-sheet figcaption{padding:12px 25px;font-size:11px;text-align:center;letter-spacing:.06em}
.catalog-reader:fullscreen{overflow:auto;width:100%;height:100%;scroll-behavior:smooth}
.catalog-reader:fullscreen .reader-pages{max-width:1200px}
@media(min-width:1500px){.journey-image{max-height:64svh}}
@media(max-width:1000px){.finish-journey{grid-template-columns:155px minmax(0,1fr);gap:25px}.journey-image{height:480px}.journey-caption{gap:20px}.journey-save{font-size:11px}.homes-beach img{min-height:600px}.homes-dream-copy>p:not(.kicker){font-size:16px}.simple-steps h3{font-size:21px}.reader-top{gap:15px}.reader-top h1{font-size:17px}}
@media(max-width:740px){
  .main-header .main-logo{width:105px;height:55px}.main-logo .official-logo{height:55px}
  .site-bottom.home-footer .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.site-bottom.home-footer .footer-brand{grid-column:1/-1}
  .site-bottom.home-footer .footer-logo{width:190px;height:96px}.site-bottom.home-footer .footer-tagline{font-size:24px;max-width:330px}
  .site-bottom.home-footer .footer-grid nav{margin-top:0;align-self:start}.site-bottom.home-footer{padding-top:35px}
  .company-footer .company-logo-pair{gap:24px}.company-footer .company-logo-pair a{width:130px;height:72px}
  .company-faith{display:block}.company-story .company-faith h2{font-size:35px}.company-story .company-faith>p:last-child{font-size:14px;margin-top:25px}
  .simple-steps{grid-template-columns:1fr;gap:20px}.simple-steps h3{max-width:none;font-size:24px}.simple-steps article{padding-top:25px}
  .homes-inspiration{grid-template-columns:1fr;padding-top:45px;gap:20px}.homes-dream-copy{display:block}.homes-dream-copy h1{font-size:45px}
  .homes-dream-copy>p:not(.kicker){font-size:16px;margin-bottom:24px}.homes-beach{grid-row:auto}.homes-beach img{height:460px;min-height:0}.homes-veranda img{height:320px}.homes-welcome{padding:10px 5px}.homes-design-heading{margin-top:30px}
  .house-premium-intro .big-copy{display:block;padding:28px 0 0}.house-premium-intro .big-copy>ul{padding-left:20px}.house-premium-intro .big-copy>.button-row{margin-top:20px}
  .roofing-hero:not([data-gallery]){min-height:590px}
  .finish-journey-page{padding:35px 5vw 45px}.journey-heading{display:block;margin-bottom:24px}.journey-heading h1{font-size:39px}.journey-heading>p{font-size:14px;margin-top:22px}
  .finish-journey{display:block}.journey-sidebar{position:static;padding:0}.journey-sidebar>.kicker{display:none}
  #journey-chapters{flex-direction:row;overflow:auto;scrollbar-width:none;gap:5px;padding-bottom:10px;margin-bottom:15px}
  #journey-chapters button{white-space:nowrap;border-left:0;border-bottom:2px solid transparent;padding:11px 12px;font-size:12px}
  #journey-chapters button[aria-current=true]{border-left:0;border-bottom-color:#193c32}
  .journey-catalog{padding:0;border:0;margin:0 0 20px;font-size:12px;gap:10px}.journey-catalog img{display:none}.journey-catalog br{display:none}.journey-catalog b{display:inline;margin-left:8px;font-size:14px}
  .journey-image{height:auto;aspect-ratio:var(--journey-aspect,1.5);max-height:58svh;min-height:0}.journey-caption{display:block;padding-top:21px}.journey-caption h2{font-size:31px}.journey-caption p:not(.kicker){font-size:13px}.journey-save{font-size:12px}
  .journey-detail-inner{grid-template-columns:1fr;gap:20px}.journey-saved{gap:20px}.journey-saved .btn{width:100%}
  .reader-top{padding:12px 4vw;gap:10px;flex-wrap:wrap}.reader-top h1{font-size:18px;order:-1;width:100%;flex-basis:100%}.reader-top>a{font-size:10px}.reader-top label{flex:1;width:auto;min-width:120px}.reader-top button{font-size:10px;padding:5px 0}.reader-top select{font-size:10px;padding:8px;min-height:38px}.reader-sheet{margin-bottom:12px}
}
@media(prefers-reduced-motion:reduce){.homes-inspiration a img{transition:none}.catalog-reader:fullscreen{scroll-behavior:auto}}
