@font-face{font-family:'Bebas Neue';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/bebas-neue-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url(assets/fonts/dm-sans-latin-wght-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url(assets/fonts/manrope-latin-wght-normal.woff2) format('woff2')}
@font-face{font-family:'Oswald';font-style:normal;font-weight:200 700;font-display:swap;src:url(assets/fonts/oswald-latin-wght-normal.woff2) format('woff2')}
:root{--ivory:#f6f4ee;--cream:#eeeae1;--ink:#242522;--muted:#77756e;--line:#d7d3ca}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,6vw,115px);background:var(--ivory);position:relative;z-index:20;border-bottom:1px solid #e7e4dc}.brand{font-family:'Manrope','DM Sans',Arial,sans-serif;font-size:20px;font-weight:700;letter-spacing:.075em;line-height:1.05}.brand span{display:block;font-family:'DM Sans',sans-serif;letter-spacing:.38em;font-size:8px;margin-top:9px;text-align:center}.nav{display:flex;align-items:center;gap:26px;text-transform:uppercase;font-size:10px;letter-spacing:.17em}.nav a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:6px}.nav .cta{border:1px solid var(--ink);padding:15px 19px}.menu-toggle{display:none;background:none;border:0;font-size:26px;cursor:pointer}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.serif,h1,h2,h3{font-family:'Manrope','DM Sans',Arial,sans-serif;font-weight:500}h1{font-size:clamp(48px,7vw,105px);line-height:1.06;letter-spacing:-.055em;margin:20px 0}h2{font-size:clamp(38px,4.5vw,69px);line-height:1.13;letter-spacing:-.048em;margin:17px 0 25px}h3{font-size:clamp(27px,2.8vw,43px);letter-spacing:-.035em;margin:10px 0 15px}p{line-height:1.85;color:#57564f}.hero{min-height:min(770px,80vw);height:calc(100svh - 86px);max-height:910px;position:relative;overflow:hidden;background:#79756a}.hero img{position:absolute;inset:0;filter:brightness(.70)}.hero-content{position:absolute;left:clamp(24px,9vw,155px);bottom:clamp(50px,11vh,135px);color:white;max-width:920px}.hero-content h1{max-width:840px}.hero-content p{color:#f5f3ed;max-width:470px;font-size:15px}.hero-content .eyebrow{color:#fff}.line-link{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:10px;margin-top:20px}.line-link:hover{opacity:.65}.content{max-width:1460px;margin:auto;padding:clamp(75px,9vw,140px) clamp(24px,7vw,110px)}.center{text-align:center}.center .intro{max-width:610px;margin:auto}.intro{font-size:16px;line-height:1.85}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.section-head h2{margin-bottom:0}.mosaic{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}.tile{position:relative;display:block;overflow:hidden;background:#d4d0c6}.tile img{transition:transform .7s;filter:brightness(.83)}.tile:hover img{transform:scale(1.035)}.tile.large{grid-row:span 2;min-height:720px}.tile.small{min-height:350px}.tile-label{position:absolute;left:32px;bottom:27px;color:white}.tile-label b{font-family:'Manrope','DM Sans',Arial,sans-serif;font-size:40px;font-weight:400;display:block}.tile-label span{font-size:9px;letter-spacing:.23em;text-transform:uppercase}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,150px);align-items:center}.split .photo{height:660px}.split .copy{max-width:500px}.subtle{background:var(--cream)}.smallgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.smallgrid .photo{height:360px}.smallgrid h3{font-size:34px}.smallgrid p{font-size:13px}.dark{background:#272823;color:white}.dark p{color:#c3c1b9}.dark .eyebrow{color:#d3d0c8}.contact-band{text-align:center;padding:110px 25px}.contact-band h2{max-width:700px;margin:20px auto}.button{display:inline-block;background:var(--ink);color:#fff;padding:18px 28px;text-transform:uppercase;letter-spacing:.16em;font-weight:600;font-size:10px;border:1px solid var(--ink);cursor:pointer}.button.light{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}.button:hover{opacity:.83}.pagehero{padding:110px clamp(24px,9vw,160px) 95px;text-align:center}.pagehero h1{font-size:clamp(66px,8vw,118px)}.pagehero p{max-width:650px;margin:0 auto}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.gallery figure{margin:0;aspect-ratio:4/5;background:#ddd9d1}.gallery figure:nth-child(5n+2){aspect-ratio:4/4}.gallery figure:nth-child(4n+3){aspect-ratio:4/5.5}.gallery img{height:100%;object-fit:cover}.service-block{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.service-card{padding:34px;border:1px solid var(--line)}.service-card h3{font-size:33px}.service-card p{font-size:14px}footer{background:#22231f;color:#f4f2eb;padding:65px clamp(24px,7vw,110px) 28px}.footer-top{display:flex;justify-content:space-between;gap:25px}.footer-links{display:flex;gap:25px;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.footer-bottom{border-top:1px solid #55554f;margin-top:65px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#bbb9b1;letter-spacing:.08em}.form{max-width:660px;margin:45px auto;text-align:left}.form label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.13em;margin:20px 0 9px}.form input,.form textarea,.form select{width:100%;padding:17px;background:transparent;border:1px solid #c8c3b9;color:var(--ink);font:inherit;border-radius:0}.form textarea{min-height:150px}.note{font-size:12px;color:var(--muted)}.image-notice{position:absolute;right:20px;bottom:18px;color:white;font-size:9px;letter-spacing:.1em;opacity:.7}.floating{background:#f7f4ec;border-top:1px solid var(--line);padding:15px 25px;text-align:center;font-size:11px;color:#666}.feature-photo{aspect-ratio:3/4}.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.chips a{border:1px solid var(--line);padding:11px 15px;font-size:11px;letter-spacing:.08em}.chips a:hover{background:#e6e0d4}@media(max-width:850px){header{height:74px}.brand{font-size:22px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--ivory);padding:25px;flex-direction:column;align-items:stretch;gap:20px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.hero{height:75svh;min-height:560px;max-height:none}.hero-content{left:27px;right:25px;bottom:55px}.hero-content h1{font-size:clamp(55px,12vw,90px)}.mosaic{grid-template-columns:1fr}.tile.large{min-height:490px;grid-row:auto}.tile.small{min-height:360px}.split{grid-template-columns:1fr}.split .photo{height:430px}.smallgrid{grid-template-columns:1fr}.smallgrid .photo{height:370px}.gallery{grid-template-columns:repeat(2,1fr)}.section-head{align-items:start;flex-direction:column}.footer-top,.footer-bottom{flex-direction:column}.footer-links{flex-wrap:wrap}.service-block{grid-template-columns:1fr}}@media(max-width:480px){.gallery{gap:8px}.content{padding:75px 22px}.pagehero{padding:90px 22px 65px}.tile-label{left:22px;bottom:22px}.tile-label b{font-size:33px}}
/* V2: restrained sans-serif identity and accessible service navigation */
.nav-dropdown{position:relative}
.nav-dropdown summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;user-select:none}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-chevron{font-size:17px;line-height:0;transition:transform .2s}
.nav-dropdown[open] .nav-chevron{transform:rotate(180deg)}
.nav-dropdown summary:focus-visible,.nav a:focus-visible,.dropdown-menu a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.dropdown-menu{position:absolute;top:calc(100% + 24px);left:-24px;min-width:245px;padding:12px 0;background:var(--ivory);border:1px solid var(--line);box-shadow:0 14px 30px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:0;z-index:30}
.dropdown-menu a{display:block;padding:12px 22px;font-size:10px;letter-spacing:.09em;white-space:nowrap;line-height:1.3}
.dropdown-menu a:hover{background:var(--cream);text-decoration:none}
.dropdown-menu .dropdown-all{font-weight:700;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:4px}
.tile-label b{font-size:clamp(24px,2.6vw,34px);font-weight:600;letter-spacing:-.04em}
@media(max-width:850px){.nav-dropdown{width:100%}.nav-dropdown summary{justify-content:space-between;padding:2px 0}.dropdown-menu{position:static;box-shadow:none;border:0;border-left:1px solid var(--line);min-width:0;margin:15px 0 0 8px;padding:0 0 0 12px}.dropdown-menu a{white-space:normal;padding:10px 12px}.nav{max-height:calc(100svh - 74px);overflow-y:auto}.hero-content h1{font-size:clamp(43px,9vw,75px)}}

/* V3: editorial condensed type with true weight variation */
.brand{font-family:'Bebas Neue','Oswald',Impact,sans-serif;font-size:30px;font-weight:400;letter-spacing:.07em}
.brand span{font-family:'DM Sans',Arial,sans-serif;font-weight:500;letter-spacing:.36em;font-size:8px;margin-top:3px}
h1,h2,h3,.tile-label b{font-family:'Oswald','Arial Narrow',Arial,sans-serif;letter-spacing:-.016em;text-transform:uppercase}
h1{font-weight:500;line-height:1.05}
h2{font-weight:400;line-height:1.08}
h3{font-weight:400;line-height:1.14}
.hero-content .display-headline{font-family:'Bebas Neue','Oswald',Impact,sans-serif;font-size:clamp(76px,10.4vw,166px);line-height:.88;letter-spacing:.006em;color:#fff;font-weight:400;margin:20px 0 30px;max-width:1120px}
.hero-content{max-width:1120px}.hero-content>p:not(.display-headline){max-width:550px}
.tile-label b{font-weight:500;letter-spacing:.015em}.pagehero h1{font-weight:400}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.brand{font-size:28px}.hero-content .display-headline{font-size:clamp(66px,12vw,108px)}}
@media(max-width:480px){.hero-content .display-headline{font-size:clamp(54px,13.5vw,78px)}}

/* V4 — live-site photography / more gallery polish */
.hero img{filter:brightness(.57) saturate(.94);object-position:center 46%}
.hero-content{z-index:2}
.mosaic .tile img,.smallgrid .photo img,.gallery img{transition:transform .65s ease,filter .5s ease}
.mosaic .tile:hover img,.smallgrid a:hover img,.gallery figure:hover img{transform:scale(1.025)}
.gallery figure,.smallgrid .photo{overflow:hidden}
.gallery figure{position:relative}
.gallery figure:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* V5 — Original RW logo, deliberate footer architecture and full scripture treatment */
header{height:98px}
.brand{display:inline-flex;align-items:center;flex-direction:column;justify-content:center;gap:2px;width:92px;min-width:92px;flex-shrink:0;line-height:1}
.brand .brand-logo{height:68px;width:auto;max-width:90px;object-fit:contain}
.brand .brand-caption{display:block;font-family:'DM Sans',sans-serif;font-size:7px;letter-spacing:.29em;font-weight:600;text-align:center;margin:0;white-space:nowrap}
.footer-brand{width:140px;align-items:flex-start}
.footer-brand .brand-logo{width:auto;max-width:128px;height:124px;filter:invert(1)}
.footer-brand .brand-caption{letter-spacing:.24em;font-size:8px;margin-left:18px}
.footer-layout{display:grid;grid-template-columns:minmax(245px,1.6fr) 1fr 1fr;gap:clamp(35px,7vw,115px);max-width:1400px;margin:auto}
.footer-identity p{font-family:'Oswald',sans-serif;color:#f1eee8;text-transform:uppercase;font-size:23px;line-height:1.2;letter-spacing:.015em;margin:23px 0 5px}
.footer-location{font-size:11px;letter-spacing:.06em;color:#b6b4ac}
.footer-col{display:flex;flex-direction:column;align-items:start;gap:15px}
.footer-col h2{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:.23em;color:#a9a79e;margin:6px 0 14px}
.footer-col a{font-size:13px;color:#f6f4ef;transition:opacity .2s}
.footer-col a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-col p{font-size:11px;color:#aaa9a1;line-height:1.6;margin:0}
.footer-bottom{max-width:1400px;margin:65px auto 0}
.scripture-section{background:#22231f;color:#f4f2eb;padding:clamp(80px,9vw,140px) 26px;text-align:center}
.scripture-inner{max-width:960px;margin:0 auto}
.scripture-section .eyebrow{color:#c7c5be}
.scripture-section blockquote,.about-scripture blockquote{margin:30px 0 0}
.scripture-section blockquote p,.about-scripture blockquote p{font-family:'Oswald','Arial Narrow',sans-serif;font-size:clamp(29px,3.55vw,53px);font-weight:300;line-height:1.36;letter-spacing:.016em;text-transform:uppercase;color:inherit;margin:0 0 26px}
.scripture-section cite,.about-scripture cite{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.25em;font-style:normal;font-weight:600}
.about-scripture{background:#eae6dd;padding:clamp(80px,9vw,130px) 26px;text-align:center}
.about-scripture h2{font-size:clamp(37px,5vw,60px)}
.about-scripture-intro{max-width:580px;margin:0 auto 20px;color:#5a574f}
.about-scripture blockquote p{font-size:clamp(26px,3vw,42px)}
@media(max-width:850px){header{height:83px}.brand{width:73px;min-width:73px}.brand .brand-logo{height:57px;max-width:73px}.brand .brand-caption{font-size:6px}.nav{top:83px;max-height:calc(100svh - 83px)}.footer-layout{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1}.footer-brand{width:135px}.footer-brand .brand-logo{height:110px;max-width:130px}.footer-brand .brand-caption{font-size:8px}.footer-bottom{gap:12px}}
@media(max-width:480px){.footer-layout{grid-template-columns:1fr 1fr;gap:30px}.footer-identity{grid-column:1/-1}.scripture-section blockquote p{font-size:29px}.footer-col a{font-size:12px}}

/* V6 refinements */
.brand{gap:0;max-height:92px}.brand .brand-logo{height:80px;max-width:104px}.footer-brand .brand-logo{height:132px;max-width:145px}.brand-caption{display:none!important}
.nav-dropdown summary{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;line-height:1.4}.nav-chevron{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;line-height:1;transform:none;transition:transform .2s;flex-shrink:0}.nav-chevron svg{display:block;width:12px;height:12px}.nav-dropdown[open] .nav-chevron{transform:rotate(180deg)}
.scripture-home-compact{padding:70px 24px}.scripture-home-compact .scripture-inner{max-width:760px}.scripture-home-compact blockquote{margin-top:23px}.scripture-home-compact blockquote p{font-size:clamp(19px,2.2vw,30px);line-height:1.55;font-weight:300;letter-spacing:.013em;margin-bottom:18px}.scripture-home-compact cite{font-size:10px}
.mobile-actions{display:flex;align-items:center;gap:12px}.mobile-call{display:none;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.12em;border:1px solid var(--ink);padding:10px 14px;white-space:nowrap}
.social-group{margin-top:11px}.social-label{display:block;color:#aaa9a1;font-size:10px;letter-spacing:.18em;margin-bottom:14px}.social-icons{display:flex;gap:10px;align-items:center}.social-icon{width:38px;height:38px;border:1px solid #64645d;border-radius:50%;display:flex;align-items:center;justify-content:center}.social-icon svg{width:17px;height:17px;stroke:#f6f4ef;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}.social-icon .filled{fill:#f6f4ef;stroke:none}.social-icon:hover{background:#42433d;text-decoration:none!important}.social-icon:focus-visible,.mobile-call:focus-visible{outline:2px solid #e2dccb;outline-offset:4px}
.faq-list{max-width:1000px;margin:0 auto;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);padding:0 2px}.faq-item summary{list-style:none;cursor:pointer;padding:24px 36px 24px 0;font-family:'Oswald',sans-serif;font-weight:400;font-size:clamp(19px,2vw,25px);letter-spacing:.015em;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';position:absolute;right:4px;top:22px;font-family:'DM Sans',sans-serif;font-size:22px;font-weight:300}.faq-item[open] summary::after{content:'−'}.faq-item p{max-width:800px;padding:0 26px 23px 0;margin:0;font-size:15px}.faq-item p a{text-decoration:underline;text-underline-offset:3px}.faq-item summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.faq-section .section-head{align-items:end}.faq-section .section-head>p{max-width:310px}.experience-note{text-align:center;max-width:680px;margin:100px auto 0}.experience-note h2{font-size:clamp(32px,4vw,54px)}.about-belief .photo{height:530px}.about-personal-faq{padding-top:35px}
@media(max-width:850px){.brand .brand-logo{height:66px;max-width:82px}.mobile-call{display:inline-flex;align-items:center;justify-content:center}.menu-toggle{font-size:24px;line-height:1;padding:10px 3px}.nav-dropdown summary{width:100%;justify-content:space-between}.scripture-home-compact{padding:62px 22px}.scripture-home-compact blockquote p{font-size:clamp(19px,4.5vw,26px)}.footer-brand .brand-logo{height:120px;max-width:132px}.about-belief .photo{height:430px}.faq-section .section-head{align-items:start}}
@media(max-width:480px){.mobile-actions{gap:12px}.brand .brand-logo{height:64px}.mobile-call{padding:9px 12px;font-size:10px}.faq-item summary{font-size:20px;padding:20px 34px 20px 0}.faq-item summary::after{top:18px}.experience-note{margin-top:70px}.scripture-home-compact blockquote p{font-size:20px}}

/* V7: organization credits, honest review placeholders, four social profiles */
.about-credentials{padding-top:50px;padding-bottom:80px}.credentials-intro{max-width:740px;color:#69665f;line-height:1.8;margin:0 0 35px}.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.credential-card{border:1px solid var(--line);padding:clamp(26px,4vw,52px);min-height:235px;display:flex;flex-direction:column;justify-content:space-between}.credential-tag{font-size:10px;color:#817d75;letter-spacing:.16em;font-weight:700}.credential-wordmark{font-family:'Oswald',sans-serif;font-weight:600;line-height:1;letter-spacing:-.04em;font-size:clamp(36px,5vw,63px);margin:27px 0 12px}.maxpreps-mark{font-style:italic;font-weight:700}.maxpreps-mark span{color:#bb493e}.connect-mark{font-size:clamp(30px,3.6vw,50px);letter-spacing:.01em}.connect-mark em{font-style:normal;font-weight:300}.credential-card p{max-width:330px;font-size:13px;line-height:1.7;color:#77736b;margin:0}.credential-disclaimer{font-size:11px;color:#858078;margin:16px 0 0;line-height:1.7}
.testimonials-section{background:#eae6dd}.testimonials-section .content{padding-top:100px;padding-bottom:105px}.testimonial-intro{max-width:280px;color:#6e6a63;font-size:14px;line-height:1.7}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.review-card{border:1px solid #ccc7bd;padding:clamp(24px,3.5vw,39px);min-height:280px;display:flex;flex-direction:column;background:rgba(255,255,255,.17)}.review-source{font-size:9px;letter-spacing:.16em;font-weight:700;color:#777168}.review-placeholder{font-family:'Oswald',sans-serif;font-weight:300;text-transform:uppercase;font-size:clamp(26px,3vw,38px);line-height:1.19;margin:auto 0 22px;max-width:290px}.review-card p{color:#807b73;font-size:12px;line-height:1.7;margin:0}.testimonial-footnote{margin:22px 0 0;font-size:11px;line-height:1.6;color:#777169}
@media(max-width:850px){.review-grid{grid-template-columns:1fr 1fr}.review-card:last-child{grid-column:1/-1;min-height:190px}.testimonial-intro{max-width:450px}.credentials-intro{margin-top:15px}}
@media(max-width:560px){.credential-grid,.review-grid{grid-template-columns:1fr}.review-card:last-child{grid-column:auto}.review-card{min-height:220px}.credential-card{min-height:200px}.about-credentials{padding-top:36px}.testimonials-section .content{padding-top:70px;padding-bottom:75px}}

.google-review-link{display:inline-block;margin-top:1rem;font-size:.86rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;}

/* V9: balanced review cards & dedicated testimonials page */
.review-grid{align-items:stretch}
.review-card{min-height:315px;display:flex;flex-direction:column;gap:18px}
.review-excerpt{font-family:'Oswald',sans-serif;font-size:clamp(23px,2.35vw,31px);font-weight:300;line-height:1.35;text-transform:none;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.review-author{font-size:13px!important;font-weight:700;color:#37342e!important;margin:0!important}
.review-more{font-size:11px;text-transform:uppercase;letter-spacing:.12em;text-decoration:underline;text-underline-offset:4px;align-self:flex-start}
.review-more:hover{opacity:.6}
.testimonials-hero{min-height:290px}
.all-reviews{padding-top:75px;padding-bottom:100px}
.all-reviews>h2{margin:12px 0 36px}
.full-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.full-review-card{padding:clamp(24px,3.6vw,44px);border:1px solid #d8d1c6;background:#faf8f2;display:flex;flex-direction:column;gap:20px;scroll-margin-top:120px}
.full-review-text{font-family:'DM Sans',sans-serif;font-weight:400;font-size:clamp(15px,1.35vw,18px);line-height:1.8;margin:0;flex:1}
.full-review-card .review-author{font-size:14px!important}
.review-original{font-size:12px;text-decoration:underline;text-underline-offset:4px;align-self:flex-start}
.reviews-cta{background:#252622;color:#f8f6f0;margin-top:65px;padding:50px clamp(20px,5vw,70px)}
.reviews-cta h2{color:inherit}
.reviews-cta p{color:#d5d3cd;margin-bottom:22px}
.reviews-cta .button{background:#f8f6f0;color:#252622;border-color:#f8f6f0}
@media(max-width:850px){.full-review-grid{grid-template-columns:1fr}.review-card{min-height:310px}.review-card:last-child{min-height:310px}}
@media(max-width:560px){.review-card,.review-card:last-child{min-height:260px}.review-excerpt{font-size:26px}.full-review-card{gap:14px}.all-reviews{padding-top:45px;padding-bottom:65px}}


/* V10 — image-led interior page heroes, matching editorial homepage */
.image-pagehero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:clamp(390px,53vw,570px);padding:90px clamp(24px,7vw,110px);overflow:hidden;text-align:center;background:#393c39;color:#fff}
.image-pagehero .pagehero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:saturate(.78) brightness(.82)}
.image-pagehero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,18,18,.3),rgba(15,18,18,.48))}
.image-pagehero .pagehero-inner{position:relative;z-index:1;max-width:980px;margin:0 auto}
.image-pagehero .eyebrow{color:#eceae5}
.image-pagehero h1{font-size:clamp(62px,8vw,120px);line-height:.98;color:#fff;letter-spacing:.015em;margin:22px auto;max-width:1000px;text-wrap:balance}
.image-pagehero p{max-width:660px;color:#f5f2ed;font-size:clamp(15px,1.6vw,18px);line-height:1.7;margin:0 auto}
.image-pagehero:has(+ #inquiry-form){min-height:420px}
#inquiry-form{padding-top:45px;padding-bottom:100px}
#inquiry-form .form{margin-top:0}
@media(max-width:700px){.image-pagehero{min-height:410px;padding:68px 24px}.image-pagehero h1{font-size:clamp(52px,12vw,78px)}.image-pagehero p{font-size:15px}.image-pagehero .pagehero-photo{object-position:50% 40%}}


/* V11 — intentional whitespace separating interior photographic heroes from page content */
.image-pagehero {
  margin-bottom:clamp(32px,4.2vw,68px);
}
/* Rebalance the first content section, avoiding excessive empty space after the new gap. */
.image-pagehero + .content {
  padding-top:clamp(28px,4vw,58px);
}
/* Subtle dark neutral overlay keeps white type legible across varied portrait and sports imagery. */
.image-pagehero .pagehero-photo {
  filter:saturate(.86) brightness(.9);
}
.image-pagehero::before {
  background:linear-gradient(180deg,rgba(20,22,22,.48) 0%,rgba(22,23,23,.42) 45%,rgba(16,17,17,.59) 100%);
}
@media(max-width:700px) {
  .image-pagehero {margin-bottom:30px;}
  .image-pagehero + .content {padding-top:30px;}
  .image-pagehero::before {background:linear-gradient(180deg,rgba(20,22,22,.48),rgba(16,17,17,.64));}
}

/* V12: wedding and engagement image intake awaiting curated user originals */
.wedding-hero{background:linear-gradient(125deg, #242b29, #454740 60%, #191b1a);}
.wedding-hero:before,.wedding-hero:after{display:none!important;}
.wedding-intro{padding-top:3.5rem; padding-bottom:5rem;}
.wedding-intro-copy{max-width:740px;line-height:1.8;}
.wedding-intro-copy p{margin-bottom:1.5rem;}

/* V13: customer photographs, responsive editorial gallery; maintain natural image orientation */
.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.photo-gallery figure,.photo-gallery figure:nth-child(5n+2),.photo-gallery figure:nth-child(4n+3){aspect-ratio:auto;height:auto;background:#e8e4db;overflow:hidden}
.photo-gallery img{display:block;width:100%;height:auto;object-fit:contain;transition:transform .4s ease}
.photo-gallery figure:hover img{transform:scale(1.015)}
.image-pagehero .pagehero-photo{filter:saturate(.93) brightness(.78)}
.image-pagehero:before{background:linear-gradient(180deg,rgba(10,12,12,.35),rgba(10,12,12,.48))}
.hero img{filter:brightness(.69) saturate(.94)}
.wedding-image-hero{margin-bottom:clamp(32px,4.2vw,68px)}
.wedding-gallery-section h2{font-size:clamp(33px,4vw,54px)}
.wedding-gallery-section>p{max-width:670px;margin:0 0 40px}
@media(max-width:850px){.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(max-width:520px){.photo-gallery{grid-template-columns:1fr;gap:18px}.photo-gallery img{width:100%}.image-pagehero{min-height:370px}}


/* V14: Editorial masonry galleries — preserve full uncropped compositions. */
.photo-gallery {
  display:block;
  columns:3 250px;
  column-gap:18px;
}
.photo-gallery figure,
.photo-gallery figure:nth-child(5n+2),
.photo-gallery figure:nth-child(4n+3) {
  display:block;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  width:100%;
  margin:0 0 18px;
  height:auto;
  aspect-ratio:auto;
  position:relative;
  background:#e8e4db;
}
.photo-gallery img {
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  transform:none!important;
}
.photo-gallery .lightbox-open {
  position:absolute;inset:0;
  display:flex;align-items:flex-end;justify-content:flex-end;
  padding:15px;background:transparent;border:0;cursor:zoom-in;
  color:#fff;transition:background .2s ease;
}
.photo-gallery .lightbox-open:after {
  content:'↗';
  display:grid;place-items:center;
  width:34px;height:34px;border-radius:50%;
  background:rgba(18,19,19,.62);font-size:18px;line-height:1;
  opacity:0;transform:translateY(4px);transition:all .2s ease;
}
.photo-gallery figure:hover .lightbox-open:after,
.photo-gallery .lightbox-open:focus-visible:after{opacity:1;transform:translateY(0)}
.photo-gallery .lightbox-open:focus-visible{outline:3px solid #d8af7c;outline-offset:-4px}
@media (max-width:850px){.photo-gallery{columns:2 210px;column-gap:12px}.photo-gallery figure{margin-bottom:12px!important}}
@media (max-width:520px){.photo-gallery{columns:1;column-gap:0}.photo-gallery figure{margin-bottom:16px!important}}

/* Native dialog lightbox; works when the site is opened locally. */
.rw-lightbox{padding:0;border:0;background:rgba(15,16,16,.98);color:white;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;overflow:hidden}
.rw-lightbox::backdrop{background:rgba(0,0,0,.95)}
.rw-lightbox[open]{display:flex;flex-direction:column;align-items:center;justify-content:center}
.rw-lightbox img{width:auto;height:auto;max-width:calc(100vw - 130px);max-height:calc(100dvh - 132px);object-fit:contain;flex:0 1 auto}
.rw-lightbox .rw-lightbox-close,.rw-lightbox .rw-lightbox-prev,.rw-lightbox .rw-lightbox-next{position:absolute;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);background:rgba(20,20,20,.65);color:#fff;border-radius:50%;width:45px;height:45px;cursor:pointer;font-size:27px;line-height:1}
.rw-lightbox .rw-lightbox-close{right:22px;top:22px;font-size:25px}
.rw-lightbox .rw-lightbox-prev{left:20px;top:50%;transform:translateY(-50%)}
.rw-lightbox .rw-lightbox-next{right:20px;top:50%;transform:translateY(-50%)}
.rw-lightbox .rw-lightbox-close:hover,.rw-lightbox .rw-lightbox-prev:hover,.rw-lightbox .rw-lightbox-next:hover{background:#555}
.rw-lightbox .rw-lightbox-meta{position:absolute;bottom:20px;left:16px;right:16px;text-align:center;font-size:12px;letter-spacing:.04em;color:#ddd;pointer-events:none}
@media(max-width:600px){.rw-lightbox img{max-width:100vw;max-height:calc(100dvh - 125px)}.rw-lightbox .rw-lightbox-prev,.rw-lightbox .rw-lightbox-next{top:auto;bottom:18px;transform:none}.rw-lightbox .rw-lightbox-prev{left:20px}.rw-lightbox .rw-lightbox-next{right:20px}.rw-lightbox .rw-lightbox-meta{bottom:33px;left:70px;right:70px}.rw-lightbox .rw-lightbox-close{top:12px;right:12px}}

/* V15 — consistent, fully aligned gallery rows, no forced crops. */
.photo-gallery {
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:16px!important;columns:auto!important;align-items:stretch!important;
}
.photo-gallery figure,
.photo-gallery figure:nth-child(5n+2),
.photo-gallery figure:nth-child(4n+3) {
 display:flex!important;justify-content:center;align-items:center;
 width:100%!important;aspect-ratio:4 / 3!important;min-width:0;
 height:auto!important;margin:0!important;overflow:hidden;
 background:#e7e3da!important;position:relative;
}
.photo-gallery figure img {
 width:100%!important;height:100%!important;object-fit:contain!important;
 transform:none!important;transition:none!important;
}
.photo-gallery figure:hover img {transform:none!important}
.photo-gallery .lightbox-open:after {opacity:1;transform:none}
@media(max-width:850px){.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}}
@media(max-width:540px){.photo-gallery{grid-template-columns:1fr!important;gap:14px!important}.photo-gallery figure{aspect-ratio:4 / 3!important}}

/* V18 inquiry form refinement */
.form-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.honeypot{position:absolute;left:-99999px;opacity:0;pointer-events:none}
.form-demo-note{font-size:12px;opacity:.72}
@media(max-width:680px){.form-two{grid-template-columns:1fr;gap:0}}

/* Production refinements */
.hero .homepage-hero-photo {object-position: 64% 8%;filter:brightness(.94) saturate(.96)}
.hero:has(.homepage-hero-photo)::after {content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,13,13,.79) 0%,rgba(15,17,16,.58) 37%,rgba(10,13,13,.09) 74%)}
.hero:has(.homepage-hero-photo) .hero-content {z-index:2;max-width:min(740px,69vw)}
.hero:has(.homepage-hero-photo) .display-headline {font-size:clamp(65px,8.9vw,143px)}
.contact-direct {margin:0 auto 10px;text-align:center;font-size:14px}.contact-direct a{text-decoration:underline;text-underline-offset:4px}
.linkhub {max-width:680px;margin:auto;padding:70px 25px 95px;text-align:center}.linkhub-top img {width:82px;height:90px;object-fit:contain;margin:0 auto 24px}.linkhub-top h1{font-family:'Bebas Neue','Oswald',sans-serif;font-size:clamp(50px,8vw,83px);line-height:1;margin:22px 0 12px}.linkhub-top p{max-width:450px;margin:0 auto 30px}.linkhub-list{display:flex;flex-direction:column;gap:10px}.linkhub-item{border:1px solid #c9c5bd;padding:20px 24px;background:#fffefa;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;font-size:12px;font-weight:700;letter-spacing:.12em;transition:background .2s,border-color .2s}.linkhub-item:hover,.linkhub-item:focus-visible{background:#eeeae1;border-color:#8f897e}.linkhub-social{padding:43px 0 0}.linkhub-socials{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-top:17px;font-size:12px}.linkhub-socials a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.hero:has(.homepage-hero-photo) .hero-content{max-width:100%;right:24px}.hero .homepage-hero-photo{object-position:50% center}.hero:has(.homepage-hero-photo)::after{background:linear-gradient(0deg,rgba(7,10,8,.79),rgba(7,10,8,.2) 66%)}.hero:has(.homepage-hero-photo) .display-headline{font-size:clamp(55px,10vw,88px)}}
@media(max-width:480px){.hero .homepage-hero-photo{object-position:50% center}.hero:has(.homepage-hero-photo) .display-headline{font-size:clamp(53px,12vw,70px)}.linkhub{padding:45px 20px 75px}}

.form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;line-height:1.2;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%277%27 viewBox=%270 0 12 7%27%3E%3Cpath d=%27M1 1l5 5 5-5%27 fill=%27none%27 stroke=%27%23242522%27 stroke-width=%271.5%27/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:46px;cursor:pointer}
