:root{--ink:#202522;--muted:#68706a;--paper:#f4f1eb;--sand:#e7ded2;--sage:#ccd8ca;--sage-deep:#8fa596;--line:rgba(32,37,34,.15);--dark:#24312f;--cream:#f8f6f1;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.skip-link{position:absolute;left:-999px;top:10px}.skip-link:focus{left:15px;z-index:50;background:var(--ink);color:#fff;padding:8px 14px}.section-shell{padding-left:clamp(24px,6vw,105px);padding-right:clamp(24px,6vw,105px)}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:17px clamp(24px,5vw,88px);background:rgba(244,241,235,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(32,37,34,.08)}.brand,.footer-brand{display:flex;align-items:center;gap:11px;line-height:1.05}.brand strong,.footer-brand strong{display:block;font-size:15px;font-weight:600;letter-spacing:-.02em}.brand small,.footer-brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-top:5px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--dark);color:var(--cream);font:italic 21px var(--serif);letter-spacing:-.12em;padding-right:3px}.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,36px);font-size:12px;color:#4e5750}.site-header nav a:not(.nav-cta):hover,.quiet-link:hover,.footer-links a:hover{color:var(--sage-deep)}.nav-cta{padding:10px 17px;background:var(--ink);color:#fff;border-radius:99px}.menu-toggle{display:none;border:0;background:transparent;font-size:12px}.eyebrow{display:flex;align-items:center;gap:10px;color:#7a857d;font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin:0 0 20px}.eyebrow-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--sage-deep)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.01}h1 em,h2 em{font-style:italic}h2{font-size:clamp(42px,5.4vw,78px)}h3{font-size:20px;letter-spacing:-.02em;line-height:1.15;margin-bottom:10px}.hero{min-height:calc(100vh - 69px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(30px,8vw,125px);align-items:center;padding-top:clamp(65px,9vh,120px);padding-bottom:clamp(65px,9vh,120px);overflow:hidden}.hero h1{max-width:760px;font-size:clamp(62px,8.3vw,124px);margin-bottom:28px}.hero-lead{max-width:625px;color:#5c665f;font-size:clamp(17px,1.45vw,20px);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid transparent;border-radius:99px;padding:13px 20px;font-size:12px;line-height:1.2;cursor:pointer;transition:transform .2s,background .2s,color .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#39463f}.button-outline{border-color:var(--line);background:transparent}.button-outline:hover{border-color:var(--ink)}.quiet-link{font-size:12px;color:#58625b;border-bottom:1px solid #a9b3aa;padding-bottom:4px}.quiet-link span{margin-left:8px}.trust-row{display:flex;align-items:center;gap:12px;margin-top:44px;color:#78837a;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.trust-row i{width:3px;height:3px;border-radius:50%;background:#aeb8af}.hero-visual{position:relative;min-height:570px;display:grid;place-items:center;transition:transform .2s ease-out}.visual-orbit{position:absolute;border:1px solid rgba(112,139,121,.45);border-radius:50%;transform:rotate(-24deg)}.orbit-one{width:min(38vw,490px);height:min(31vw,405px)}.orbit-two{width:min(32vw,410px);height:min(41vw,520px);transform:rotate(42deg);border-color:rgba(204,174,140,.6)}.visual-card{position:absolute;box-shadow:0 24px 60px rgba(48,59,53,.12)}.card-main{z-index:2;width:min(300px,65%);aspect-ratio:.8;padding:35px 30px;display:flex;flex-direction:column;justify-content:space-between;background:var(--dark);color:var(--cream);transform:rotate(5deg)}.card-kicker,.card-main small{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#bac8bd}.card-main strong{font:400 clamp(38px,4vw,57px)/.9 var(--serif);letter-spacing:-.04em}.card-main em{font-style:italic;color:#d9b58c}.card-line{display:block;width:53px;height:1px;background:#b6c5b9}.card-note{z-index:3;right:4%;bottom:12%;width:165px;padding:17px 18px;background:#efe8de;transform:rotate(-6deg)}.card-note span{color:#839188;font-size:10px;letter-spacing:.14em}.card-note p{font:24px/1.05 var(--serif);margin:8px 0 0}.card-stamp{left:4%;top:16%;display:grid;place-items:center;width:62px;height:62px;border:1px solid #a4b5a5;border-radius:50%;background:var(--paper);color:#829687;font:italic 23px/.72 var(--serif);text-align:center;transform:rotate(-13deg)}.welcome{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(35px,10vw,160px);padding-top:clamp(75px,11vw,160px);padding-bottom:clamp(85px,12vw,175px);border-top:1px solid var(--line)}.welcome-label{display:flex;gap:16px;color:#89958c;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.welcome-label span:first-child{color:var(--ink)}.welcome-copy{max-width:850px}.welcome-copy h2{font-size:clamp(46px,6.3vw,94px);max-width:730px;margin-bottom:28px}.welcome-copy p{max-width:630px;color:#626b64;font-size:17px}.soft-panel{background:#e9e1d7}.recognition{padding-top:clamp(70px,9vw,130px);padding-bottom:clamp(80px,10vw,145px)}.section-heading{max-width:735px;margin-bottom:60px}.section-heading h2{margin-bottom:22px}.section-heading>p:last-child{color:#68716a;font-size:16px;max-width:560px}.recognition-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.recognition-grid article{border-top:1px solid rgba(32,37,34,.23);padding:17px 10px 0 0}.recognition-grid span,.services-grid span,.method-steps span{font-size:10px;color:#78847b;letter-spacing:.15em}.recognition-grid h3{font:23px/1.03 var(--serif);margin:22px 0 14px}.recognition-grid p,.services-grid p,.online-benefits p,.method-steps p{color:#677069;font-size:13px;line-height:1.55}.online-section{padding-top:clamp(90px,12vw,175px);padding-bottom:clamp(85px,11vw,160px)}.online-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:end;margin-bottom:70px}.online-intro h2{max-width:650px;font-size:clamp(43px,5.7vw,80px)}.online-intro>p:last-child{max-width:500px;color:#626c64;font-size:17px}.online-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}.online-benefits article{padding:30px 25px 5px 0;border-right:1px solid var(--line)}.online-benefits article:not(:first-child){padding-left:25px}.online-benefits article:last-child{border-right:0}.online-benefits span{display:block;color:#92a897;font-size:24px;height:32px}.online-benefits h3{font:24px/1 var(--serif);margin:18px 0 14px}.online-footnote{margin:55px 0 0;color:#859087;font-size:11px}.dark-panel{background:var(--dark);color:var(--cream)}.method-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;padding-top:clamp(85px,11vw,160px);padding-bottom:clamp(85px,11vw,160px)}.eyebrow.light{color:#aab9ad}.method-heading h2{font-size:clamp(45px,5.7vw,83px);max-width:590px;margin-bottom:26px}.method-heading>p:last-child{color:#b8c3ba;max-width:460px;font-size:16px}.method-steps{display:grid;grid-template-columns:1fr 1fr;gap:45px 55px;align-content:center}.method-steps article{border-top:1px solid rgba(230,238,231,.25);padding-top:17px}.method-steps span{color:#b7c8bb}.method-steps h3{font:31px/1 var(--serif);margin:17px 0 10px}.method-steps p{color:#bcc7be;margin-bottom:0}.emdr-section{display:grid;grid-template-columns:160px 1fr;gap:7vw;align-items:start;padding-top:clamp(80px,11vw,155px);padding-bottom:clamp(80px,11vw,155px)}.emdr-badge{display:grid;place-items:center;width:116px;height:116px;border:1px solid #98aa9b;border-radius:50%;color:#6f8577;font-size:12px;letter-spacing:.15em;transform:rotate(-10deg)}.emdr-section h2{max-width:900px;margin-bottom:28px}.emdr-section div:last-child>p:last-child{max-width:780px;color:#68716a;font-size:16px}.first-map{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;padding-top:clamp(75px,10vw,140px);padding-bottom:clamp(75px,10vw,140px)}.map-copy h2{font-size:clamp(44px,5.5vw,78px);max-width:510px;margin-bottom:24px}.map-copy>p:last-child{color:#69736b;max-width:410px;font-size:15px}.map-widget{padding:28px 30px 24px;background:var(--cream);box-shadow:0 18px 45px rgba(48,59,53,.08)}.map-progress{height:3px;background:#e1e5df;margin-bottom:26px}.map-progress span{display:block;width:25%;height:100%;background:#93a898;transition:width .3s}.map-question{font:28px/1.08 var(--serif);margin-bottom:22px}.map-options{display:grid;gap:9px}.map-options button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 15px;background:transparent;border:1px solid var(--line);text-align:left;font-size:13px;cursor:pointer;transition:background .2s,border-color .2s}.map-options button:hover{background:#eef1ec;border-color:#9ead9f}.map-options button span{font-size:20px;color:#83978a}.map-result{border-top:1px solid var(--line);padding-top:22px}.result-label{color:#83978a;font-size:10px;text-transform:uppercase;letter-spacing:.14em}.map-result p{font:28px/1.08 var(--serif);margin:12px 0 25px;max-width:590px}.map-result>div{display:flex;gap:10px;flex-wrap:wrap}.map-result .button{font-size:11px}.map-note{margin:25px 0 0;color:#88928a;font-size:10px}.services-section{padding-top:clamp(80px,11vw,155px);padding-bottom:clamp(80px,11vw,155px)}.services-heading{max-width:780px}.services-heading h2{max-width:690px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.services-grid article{min-height:205px;padding:28px 28px 25px 0;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.services-grid article:nth-child(3n+2),.services-grid article:nth-child(3n+3){padding-left:28px}.services-grid article:nth-child(3n){border-right:0}.services-grid h3{font:27px/1.04 var(--serif);margin:22px 0 14px}.about-section{display:grid;grid-template-columns:.88fr 1.12fr;gap:10vw;align-items:center;padding-top:clamp(80px,11vw,155px);padding-bottom:clamp(80px,11vw,155px);background:#ded4c8}.about-portrait{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1/1;max-width:480px;background:radial-gradient(circle at 67% 25%,#e9d9c6 0 12%,transparent 13%),radial-gradient(circle at 30% 70%,#a2b6a6 0 19%,transparent 20%),linear-gradient(135deg,#bac9bd,#e3c8b1);overflow:hidden}.about-portrait:before{content:"";position:absolute;width:72%;height:72%;border:1px solid rgba(255,255,255,.65);border-radius:50%;transform:rotate(32deg)}.about-portrait span{z-index:1;font:italic 130px/.7 var(--serif);color:#fff;letter-spacing:-.12em;padding-right:14px}.about-portrait small{z-index:1;margin-top:35px;color:#fff;text-align:center;letter-spacing:.14em;text-transform:uppercase;font-size:10px}.about-copy h2{font-size:clamp(50px,6vw,86px);margin-bottom:30px}.about-copy>p:not(.eyebrow):not(.about-signature){max-width:650px;color:#5f6961;font-size:16px}.about-signature{font:28px/1.1 var(--serif);margin-top:35px;color:#68746a}.about-signature em{font-size:36px}.local-section{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;padding-top:clamp(60px,8vw,110px);padding-bottom:clamp(60px,8vw,110px)}.local-section h2{font-size:clamp(38px,4.6vw,65px);max-width:720px}.local-section>p{align-self:end;color:#677169;font-size:16px}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;padding-top:clamp(80px,11vw,155px);padding-bottom:clamp(80px,11vw,155px)}.faq-heading h2{font-size:clamp(43px,5.2vw,72px)}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font:24px/1.05 var(--serif);list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font:24px/1 var(--sans);color:#87958a}.faq-list details[open] summary:after{content:"−"}.faq-list details p{max-width:700px;color:#68716a;font-size:14px;margin:17px 40px 0 0}.contact-section{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;padding-top:clamp(75px,9vw,130px);padding-bottom:clamp(75px,9vw,130px);background:#c9d7cb}.contact-section h2{font-size:clamp(49px,6vw,86px);max-width:740px}.contact-section>div>p:not(.eyebrow){font-size:17px;color:#57635a}.contact-card{background:var(--cream);padding:28px;box-shadow:0 20px 45px rgba(48,59,53,.1)}.contact-card-top{display:flex;align-items:center;gap:8px;color:#76857a;text-transform:uppercase;letter-spacing:.13em;font-size:10px;margin-bottom:20px}.status-dot{width:7px;height:7px;border-radius:50%;background:#7fa284}.contact-card>p{color:#69746a;font-size:11px;text-align:center;margin:18px 0 0}.site-footer{display:grid;grid-template-columns:1fr auto 1.1fr;gap:35px;align-items:start;padding-top:45px;padding-bottom:45px;background:var(--dark);color:#dfe8df}.site-footer .brand-mark{background:#dfe8df;color:var(--dark)}.site-footer small{color:#aebdaf}.footer-links{display:flex;gap:20px;color:#c4d0c5;font-size:11px}.footer-legal{text-align:right;color:#aebcaf;font-size:11px}.footer-legal p{margin:0 0 8px}.footer-legal .small{font-size:10px;max-width:340px;margin-left:auto}.footer-brand{align-items:flex-start}@media(max-width:1050px){.site-header nav{gap:16px}.hero{grid-template-columns:1fr .8fr}.card-main{width:245px}.online-intro,.method-section,.first-map,.faq-section{gap:6vw}.recognition-grid,.online-benefits{grid-template-columns:repeat(2,1fr)}.recognition-grid article:nth-child(2n),.online-benefits article:nth-child(2n){border-right:0;padding-left:25px}.recognition-grid article:nth-child(n+3){margin-top:25px}.online-benefits article:nth-child(n+3){border-top:1px solid var(--line);padding-top:25px}.about-section{gap:7vw}}@media(max-width:780px){.site-header{padding-top:14px;padding-bottom:14px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:66px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 20px;background:var(--paper);border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.site-header nav a{padding:12px 0}.site-header .nav-cta{text-align:center;margin-top:7px}.hero{display:block;padding-top:70px}.hero h1{font-size:clamp(59px,14vw,92px)}.hero-visual{min-height:500px;margin-top:35px}.visual-card.card-note{right:10%}.welcome,.online-intro,.method-section,.first-map,.about-section,.local-section,.faq-section,.contact-section{grid-template-columns:1fr}.welcome{gap:35px}.online-intro{margin-bottom:48px}.online-benefits{grid-template-columns:1fr 1fr}.method-steps{margin-top:50px}.emdr-section{grid-template-columns:1fr;gap:35px}.emdr-badge{width:88px;height:88px}.about-portrait{max-width:none;width:100%;aspect-ratio:1.35/1;margin-bottom:15px}.local-section{gap:30px}.faq-heading{margin-bottom:25px}.site-footer{grid-template-columns:1fr;gap:25px}.footer-legal{text-align:left}.footer-legal .small{margin-left:0}.footer-links{flex-wrap:wrap}}@media(max-width:520px){.site-header{padding-left:17px;padding-right:17px}.brand-mark{width:30px;height:30px;font-size:19px}.brand strong{font-size:13px}.hero{padding-top:58px}.hero h1{font-size:clamp(53px,15vw,76px)}.hero-actions{align-items:stretch;flex-direction:column;gap:17px}.hero-actions .button{width:100%}.trust-row{gap:7px;font-size:8px;justify-content:space-between}.hero-visual{min-height:410px}.orbit-one{width:84vw;height:68vw}.orbit-two{width:72vw;height:95vw}.card-main{width:210px;padding:27px 23px}.card-main strong{font-size:42px}.card-note{width:140px}.card-note p{font-size:20px}.card-stamp{left:0;top:13%;width:52px;height:52px}.recognition-grid,.online-benefits,.method-steps,.services-grid{grid-template-columns:1fr}.recognition-grid article,.online-benefits article,.online-benefits article:nth-child(n+3){margin-top:0;padding:22px 0;border-right:0;border-top:1px solid var(--line)}.recognition-grid article:first-child,.online-benefits article:first-child{border-top:0}.services-grid article,.services-grid article:nth-child(3n+2),.services-grid article:nth-child(3n+3){padding:25px 0;border-right:0;min-height:0}.map-widget{padding:22px 18px}.map-question,.map-result p{font-size:25px}.map-result .button{width:100%}.faq-list summary{font-size:21px}.contact-card{padding:21px}.footer-links{gap:13px}}
.image-story{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,6vw,85px);align-items:center;margin-top:70px;padding-top:42px;border-top:1px solid var(--line)}.image-story figure,.emdr-image{margin:0;overflow:hidden;background:#ddd4c8}.image-story img,.emdr-image img{display:block;width:100%;height:auto}.image-story h3{font:clamp(30px,3.2vw,46px)/1 var(--serif);max-width:470px}.image-story p:not(.eyebrow){max-width:480px;color:#68716a;font-size:15px}.image-caption{color:#879288!important;font-size:11px!important;margin-top:24px}.emdr-section{grid-template-columns:140px minmax(0,1fr) minmax(180px,.42fr)}.emdr-note{color:#7e8f82!important;font-size:12px!important;border-left:2px solid #9bae9f;padding-left:15px;margin-top:28px}.emdr-image{align-self:center}.territory-image{display:block;width:100%;margin-top:35px}.local-section>div:last-child>p{max-width:590px}.local-section>div:last-child{align-self:end}@media(max-width:1050px){.emdr-section{grid-template-columns:120px 1fr}.emdr-image{grid-column:2;max-width:480px;margin-top:15px}.image-story{gap:4vw}}@media(max-width:780px){.image-story{grid-template-columns:1fr;margin-top:50px}.image-story figure{order:2}.emdr-section{grid-template-columns:1fr}.emdr-image{grid-column:auto;max-width:none}.local-section>div:last-child{align-self:auto}}@media(max-width:520px){.image-story{padding-top:28px}.image-story h3{font-size:34px}.emdr-image{margin-top:8px}}
.testimonials-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(35px,8vw,115px);padding-top:clamp(80px,10vw,145px);padding-bottom:clamp(80px,10vw,145px)}.testimonials-intro h2{font-size:clamp(43px,5.2vw,73px);margin-bottom:25px}.testimonials-intro>p:not(.eyebrow){max-width:420px;color:#68716a;font-size:14px}.rating-lockup{display:flex;align-items:center;gap:18px;margin-top:38px}.rating-lockup strong{font:64px/.8 var(--serif);letter-spacing:-.05em}.rating-lockup span{display:flex;flex-direction:column;gap:4px}.rating-lockup b{color:#b58c63;letter-spacing:.1em;font-size:14px}.rating-lockup small{color:#7c897f;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.testimonials-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.testimonials-grid figure{display:flex;flex-direction:column;justify-content:space-between;min-height:220px;margin:0;padding:25px;background:rgba(248,246,241,.72);border:1px solid rgba(32,37,34,.1)}.testimonials-grid figure:nth-child(2){transform:translateY(28px)}.testimonials-grid blockquote{margin:0;font:26px/1.1 var(--serif);letter-spacing:-.025em}.testimonials-grid figcaption{margin-top:30px;color:#869187;font-size:10px;letter-spacing:.1em;text-transform:uppercase}@media(max-width:780px){.testimonials-section{grid-template-columns:1fr}.testimonials-grid{margin-top:20px}.testimonials-grid figure:nth-child(2){transform:none}}@media(max-width:520px){.testimonials-grid{grid-template-columns:1fr}.testimonials-grid blockquote{font-size:24px}.testimonials-grid figure{min-height:190px}.rating-lockup strong{font-size:56px}}
.services-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,100px);align-items:center;margin:15px 0 75px;padding:0 0 55px;border-bottom:1px solid var(--line)}.services-feature img{display:block;width:100%;max-height:310px;object-fit:cover;background:var(--dark)}.services-feature>div{max-width:550px}.feature-number{color:#7e8b81;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.services-feature h3{font:clamp(30px,3.4vw,48px)/1.02 var(--serif);margin:20px 0}.services-feature p{max-width:450px;color:#68716a;font-size:15px}.services-feature .quiet-link{display:inline-block;margin-top:15px}@media(max-width:780px){.services-feature{grid-template-columns:1fr;margin-top:0}.services-feature img{max-height:none}.services-feature>div{max-width:none}}
img{max-width:100%}.image-story figure,.emdr-image{position:relative}.image-story figure figcaption,.emdr-image figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(25,34,29,.7));color:#fff;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.services-grid article{min-width:0}.services-grid p{overflow-wrap:anywhere}.image-credit{margin:28px 0 0;color:#879288;font-size:10px;letter-spacing:.04em}.photo-strip-section{padding-top:clamp(80px,10vw,145px);padding-bottom:clamp(80px,10vw,145px);background:#eee9e1}.photo-strip{display:grid;grid-template-columns:1.08fr .92fr 1.08fr;gap:16px}.photo-strip figure{position:relative;min-height:280px;margin:0;overflow:hidden;background:#ddd4c8}.photo-strip figure:nth-child(2){transform:translateY(32px)}.photo-strip img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover;transition:transform .5s ease}.photo-strip figure:hover img{transform:scale(1.035)}.photo-strip figcaption{position:absolute;left:20px;bottom:17px;color:#fff;font-size:11px;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 1px 12px rgba(0,0,0,.35)}
@media(max-width:1050px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid article{border-right:0;padding-left:0}.services-grid article:nth-child(odd){padding-right:28px;border-right:1px solid var(--line)}.services-grid article:nth-child(even){padding-left:28px}.photo-strip{gap:12px}.photo-strip figure,.photo-strip img{min-height:240px}}
@media(max-width:780px){.services-grid{grid-template-columns:1fr}.services-grid article,.services-grid article:nth-child(odd),.services-grid article:nth-child(even){padding:25px 0;border-right:0}.photo-strip{grid-template-columns:1fr 1fr}.photo-strip figure:first-child{grid-column:span 2}.photo-strip figure:nth-child(2){transform:none}.photo-strip figure,.photo-strip img{min-height:230px}}
@media(max-width:520px){.photo-strip{grid-template-columns:1fr}.photo-strip figure:first-child{grid-column:auto}.photo-strip figure,.photo-strip img{min-height:260px}.image-credit{line-height:1.5}}
/* Identidad y tarjetas interactivas de servicios */.about-logo{background:#f4f0e7;padding:0}.about-logo img{display:block;width:100%;height:100%;object-fit:cover}.footer-logo{display:block;width:52px;height:52px;object-fit:cover;border-radius:50%;background:#f4f0e7}.services-grid .service-card{min-width:0;min-height:250px;padding:28px 28px 25px 0;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.services-grid .service-card:nth-child(3n+2),.services-grid .service-card:nth-child(3n+3){padding-left:28px}.services-grid .service-card:nth-child(3n){border-right:0}.service-card summary{display:grid;grid-template-columns:30px minmax(0,1fr) 24px;gap:12px;align-items:start;cursor:pointer;list-style:none}.service-card summary::-webkit-details-marker{display:none}.service-card summary h3{margin:19px 0 0}.service-number{padding-top:2px}.service-toggle{display:grid;place-items:center;width:23px;height:23px;margin-top:17px;border:1px solid #a9b5aa;border-radius:50%;color:#7f9484;font-size:17px;line-height:1;transition:transform .2s,background .2s,color .2s}.service-card[open] .service-toggle{transform:rotate(45deg);background:var(--dark);color:#fff}.service-card:focus-within{outline:2px solid #9aac9e;outline-offset:-2px}.service-body{padding-left:42px}.service-body>p{margin:4px 0 18px}.service-tip{padding:15px 17px;background:#e4ece3;border-left:2px solid #9bae9f}.service-tip strong{display:block;color:#5e7665;font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px}.service-tip p{margin:0!important;color:#59675d!important;font-size:12px!important}.services-hint{margin:25px 0 0;color:#748077;font-size:11px;letter-spacing:.04em}@media(max-width:1050px){.services-grid .service-card{border-right:0;padding-left:0}.services-grid .service-card:nth-child(odd){padding-right:28px;border-right:1px solid var(--line)}.services-grid .service-card:nth-child(even){padding-left:28px}}@media(max-width:780px){.services-grid .service-card,.services-grid .service-card:nth-child(odd),.services-grid .service-card:nth-child(even){padding:25px 0;border-right:0}.service-body{padding-left:42px}.footer-logo{width:46px;height:46px}}@media(max-width:520px){.services-grid .service-card{min-height:0}.service-card summary{grid-template-columns:27px minmax(0,1fr) 23px;gap:9px}.service-body{padding-left:0}.service-tip{padding:14px}.about-logo{aspect-ratio:1.35/1}.footer-logo{width:42px;height:42px}}
.territory-image{display:block;width:100%;margin-top:35px;aspect-ratio:16/7;object-fit:cover;object-position:center;border-radius:2px}
.local-section{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(40px,8vw,120px)}.local-copy{max-width:610px}.local-description{max-width:570px!important;margin:26px 0 0;color:#677169;font-size:16px;line-height:1.7}.local-media{min-width:0;align-self:center}.local-media .territory-image{margin-top:0}.territory-caption{margin:14px 0 0;color:#7b877e;font-size:11px;line-height:1.5;letter-spacing:.03em}
@media(max-width:780px){.local-section{grid-template-columns:1fr;gap:34px}.local-description{font-size:16px}.local-media .territory-image{margin-top:0}}
@media(max-width:780px){.territory-image{aspect-ratio:16/8;max-height:280px}}
@media(max-width:520px){.territory-image{aspect-ratio:4/3;max-height:260px}}
/* Las imágenes narrativas mantienen una presencia editorial equilibrada en todas las pantallas. */.image-story figure{aspect-ratio:4/3;max-height:430px}.image-story figure img{height:100%;object-fit:cover}@media(max-width:780px){.image-story figure{aspect-ratio:4/3;max-height:360px}}@media(max-width:520px){.image-story figure{aspect-ratio:1/1;max-height:330px}}
@media(max-width:780px){.image-story figure{aspect-ratio:4/3;max-height:360px}}
@media(max-width:520px){.image-story figure{aspect-ratio:1/1;max-height:330px}}
/* El logotipo conserva su composición completa en cualquier proporción. */.about-logo img{object-fit:contain}
/* El logo completo se muestra con aire en cabecera, pie y páginas legales; no se recorta ni se deforma. */.footer-logo{width:205px;height:auto;object-fit:contain;border-radius:0;background:transparent}.legal-brand{width:220px!important;height:auto!important}.legal-brand img{height:auto!important;object-fit:contain;background:transparent}
@media(max-width:780px){.brand-logo{width:170px;height:52px}.footer-logo{width:200px}.legal-brand{width:220px;height:auto}}
@media(max-width:520px){.brand-logo{width:155px;height:46px}.footer-logo{width:190px}.legal-brand{width:205px!important;height:auto!important}.legal-brand img{height:auto!important}}
/* El mismo logotipo acompaña la cabecera, la presentación, el pie y las páginas legales. */.brand-logo{display:block;width:178px;height:54px;object-fit:contain;border-radius:0;background:transparent}.card-stamp{padding:0;overflow:hidden}.card-stamp img{display:block;width:100%;height:100%;object-fit:contain;background:transparent}
/* Ajuste de lectura: titulares más serenos y texto con más presencia. */
body{font-size:16px;line-height:1.7}
h2{font-size:clamp(38px,4.6vw,66px);line-height:1.05}
.hero h1{font-size:clamp(54px,6.4vw,96px);line-height:1.03;max-width:690px}
.hero-lead{font-size:clamp(17px,1.3vw,19px);line-height:1.65}
.welcome-copy h2{font-size:clamp(42px,5.2vw,76px)}
.online-intro h2,.method-heading h2,.map-copy h2{font-size:clamp(40px,4.9vw,70px)}
.recognition-grid p,.services-grid p,.online-benefits p,.method-steps p{font-size:14px;line-height:1.65}
.section-heading>p:last-child,.services-feature p,.about-copy>p:not(.eyebrow):not(.about-signature),.local-section>p{font-size:17px;line-height:1.7}
.service-tip p{font-size:13px!important;line-height:1.6}
/* La identidad visual usa el nuevo logo de Carolina Oblare en todos sus puntos de contacto. */
.contact-email-link{display:block;width:max-content;max-width:100%;margin:15px auto 0;color:#58625b;border-bottom:1px solid #a9b3aa;font-size:12px;padding-bottom:4px}.contact-email-link span{margin-left:8px}
.brand-logo,.footer-logo,.about-logo img,.card-stamp img{content:url("assets/logo-carolina-nuevo.png")}
.brand strong,.footer-brand strong{font:400 18px/1 var(--serif);letter-spacing:-.025em}
.brand small,.footer-brand small{font-size:9px;letter-spacing:.12em}
.card-stamp{display:none}
.hero-brand-lockup{display:none}
.hero-copy:before{display:none}
.hero-brand-lockup{display:flex;align-items:center;gap:14px;margin-bottom:30px}
.hero-brand-lockup img{width:50px;height:50px;object-fit:contain}
.hero-brand-lockup strong{display:block;color:var(--dark);font:400 24px/1 var(--serif);letter-spacing:-.025em}
.hero-brand-lockup small{display:block;margin-top:6px;color:#7a857d;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.hero-copy:before{content:none;display:none}
.hero-copy:before::first-line{font-size:17px}
@media(max-width:780px){.hero h1{font-size:clamp(48px,11.5vw,76px)}.hero-copy:before{margin-bottom:22px}.section-heading>p:last-child,.services-feature p,.about-copy>p:not(.eyebrow):not(.about-signature),.local-section>p{font-size:16px}}
@media(max-width:520px){.hero h1{font-size:clamp(45px,12.5vw,66px)}.hero-copy:before{font-size:15px;background-size:40px 40px;padding-left:50px}}
/* Reserva proporción antes de que terminen de cargar las fotografías y reduce saltos de layout. */.services-feature img{aspect-ratio:3/2}.image-story figure{aspect-ratio:4/3;max-height:430px}.emdr-image{aspect-ratio:3/2}
/* Apoyo visual para los bloques que antes quedaban demasiado abiertos. */.hero-photo{position:relative;z-index:2;width:min(350px,64%);aspect-ratio:4/5;margin:0;overflow:hidden;background:#d8cabb;box-shadow:0 28px 70px rgba(48,59,53,.18);transform:rotate(2deg)}.hero-photo img{display:block;width:100%;height:100%;object-fit:cover}.hero-photo figcaption,.welcome-photo figcaption,.recognition-visual figcaption,.method-image figcaption,.map-copy:after,.faq-heading:after{color:#fff}.hero-photo figcaption,.welcome-photo figcaption,.recognition-visual figcaption,.method-image figcaption{position:absolute;left:0;right:0;bottom:0;padding:35px 16px 13px;background:linear-gradient(transparent,rgba(25,34,29,.72));font-size:10px;letter-spacing:.1em;text-transform:uppercase}.welcome{grid-template-columns:.24fr 1fr .62fr;gap:clamp(28px,6vw,90px)}.welcome-photo,.recognition-visual,.method-image{position:relative;margin:0;overflow:hidden}.welcome-photo{align-self:center;max-width:330px;aspect-ratio:4/5;background:#d8cabb;transform:rotate(-2deg)}.welcome-photo img,.recognition-visual img,.method-image img{display:block;width:100%;height:100%;object-fit:cover}.recognition-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.42fr);gap:clamp(30px,7vw,105px);align-items:end}.recognition-visual{min-height:280px;background:#d8cabb}.recognition-grid{margin-top:65px}.method-image{margin-top:35px;max-width:350px;aspect-ratio:1.25/1;background:#34443e}.map-copy:after{content:"Poner palabras también ayuda";display:block;position:relative;width:min(100%,380px);height:145px;margin-top:42px;padding:118px 14px 12px;background-image:linear-gradient(transparent,rgba(25,34,29,.7)),url("assets/photos/map-reflection.jpg");background-position:center;background-size:cover;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.faq-heading:after{content:"Un espacio para hablar sin prisa";display:block;position:relative;max-width:360px;height:180px;margin-top:38px;padding:153px 14px 12px;background-image:linear-gradient(transparent,rgba(25,34,29,.7)),url("assets/photos/faq-conversation.jpg");background-position:center;background-size:cover;font-size:10px;letter-spacing:.1em;text-transform:uppercase}@media(max-width:1050px){.welcome{grid-template-columns:.22fr 1fr}.welcome-photo{grid-column:2;max-width:430px}.recognition-intro{gap:5vw}.method-image{max-width:100%}}@media(max-width:780px){.welcome{grid-template-columns:1fr}.welcome-photo{grid-column:auto;max-width:none;width:100%;aspect-ratio:1.45/1}.recognition-intro{grid-template-columns:1fr}.recognition-visual{min-height:250px}.recognition-grid{margin-top:48px}.method-image{max-width:none}.map-copy:after{width:100%;height:175px}.faq-heading:after{max-width:none;height:200px}}@media(max-width:520px){.hero-photo{width:67%}.welcome-photo{aspect-ratio:1.2/1}.recognition-visual{min-height:220px}.method-image{aspect-ratio:1.15/1}.map-copy:after{height:155px;padding-top:128px}.faq-heading:after{height:175px;padding-top:148px}}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:30;display:inline-flex;align-items:center;gap:10px;padding:13px 17px;border-radius:999px;background:#2e4a3e;color:#f4f1eb;box-shadow:0 12px 30px rgba(36,49,47,.24);font-size:12px;line-height:1;transition:transform .2s,box-shadow .2s}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(36,49,47,.3)}.whatsapp-float svg{width:20px;height:20px;fill:currentColor;flex:0 0 auto}.legal-page{max-width:920px;padding-top:52px;padding-bottom:80px}.legal-brand{display:block;width:86px;height:86px;margin-bottom:55px}.legal-brand img{display:block;width:100%;height:100%;object-fit:contain;background:#f4f0e7}.legal-page h1{font-size:clamp(48px,7vw,86px);margin-bottom:20px}.legal-page h2{font-size:clamp(30px,4vw,48px);margin:58px 0 18px}.legal-page p{max-width:760px;color:#657067;font-size:16px}.legal-note{padding:15px 18px;background:#e4ece3;border-left:2px solid #9bae9f;color:#5e7665!important;font-size:13px!important}@media(max-width:520px){.whatsapp-float{right:16px;bottom:16px;width:54px;height:54px;justify-content:center;padding:0}.whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.whatsapp-float svg{width:23px;height:23px}.legal-page{padding-top:30px;padding-bottom:60px}.legal-brand{width:72px;height:72px;margin-bottom:38px}}
