/* HOPE / Architectural storytelling. Shared navigation, scoped home composition. */
:root{--hope-paper:#f6f4ef;--hope-ink:#202829;--hope-copper:#936141;--hope-muted:#64706e;--hope-line:#d9dcd5;--hope-gutter:clamp(22px,4.7vw,88px)}
html{scroll-behavior:smooth;scroll-padding-top:0}
[hidden]{display:none!important}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #9b623f;outline-offset:5px}
.site-header{background:rgba(250,249,245,.96);border-bottom:1px solid #dedfd9;backdrop-filter:blur(16px);z-index:60}
.header__inner{min-height:84px;gap:24px}.brand img{width:206px;height:auto}.desktop-nav{gap:23px}.desktop-nav>a{font-size:13px;font-weight:600}
.desktop-nav .button{min-height:43px;padding:12px 19px;background:#252e2e;border:1px solid #252e2e;color:white;border-radius:3px;box-shadow:none}
.desktop-nav .button:hover{background:#805738;border-color:#805738}
.hope-topline{display:flex;justify-content:space-between;padding:8px var(--hope-gutter);background:#26302f;color:#f1f1e9;font-size:11px;letter-spacing:.035em}
.hope-topline a{color:inherit}.technical-rail{position:fixed;right:0;top:41%;z-index:55;writing-mode:vertical-rl;display:flex;align-items:center;gap:16px;padding:20px 10px;background:#293330;color:#fff;border-radius:4px 0 0 4px;font-size:11px;letter-spacing:.04em;box-shadow:0 3px 14px #0002}.technical-rail span{color:#dfc6a3}.technical-rail strong{font-weight:500}
.hope-home{background:var(--hope-paper);color:var(--hope-ink);font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.6}
.hope-home h1,.hope-home h2,.hope-home h3{font-family:Arial,"Helvetica Neue",sans-serif;font-weight:500;letter-spacing:-.045em;color:inherit}
.hope-home h1{font-size:clamp(40px,4.2vw,69px);line-height:1.075;margin:0 0 26px;max-width:640px}
.hope-home h2{font-size:clamp(31px,3.05vw,49px);line-height:1.13;margin:0 0 25px}
.hope-home h3{font-size:22px;line-height:1.3;letter-spacing:-.025em}
.hope-home em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--hope-copper);letter-spacing:-.045em}
.hope-home p{font-size:15px;line-height:1.8;color:var(--hope-muted);margin:0 0 24px}
.hope-home .overline{font-size:10px;font-weight:700;letter-spacing:.17em;color:var(--hope-copper);line-height:1.5;margin:0 0 24px}
.hope-home section{scroll-margin-top:96px}
.hope-hero{padding:clamp(45px,5vw,84px) var(--hope-gutter) 38px;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.3fr);gap:clamp(35px,5vw,85px);min-height:min(780px,calc(100svh - 152px));align-items:center;max-width:1900px;margin:auto}
.hope-hero__copy{padding:10px 0 20px}.hope-hero__copy>p:not(.overline){max-width:465px}.hope-hero__copy>.quiet-link{display:block;margin-top:20px;width:fit-content}
.hope-hero__visual{min-width:0}.hope-hero__visual .cinema{box-shadow:0 20px 45px #232e2716}
.hope-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 23px;min-height:52px;background:#26312e;color:#fff;border:1px solid #26312e;border-radius:2px;font:500 13px/1.45 Arial,sans-serif;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s;max-width:100%}
.hope-cta:hover{background:#805b3b;border-color:#805b3b;transform:translateY(-2px);color:#fff}.hope-cta span{font-size:22px;line-height:1;font-weight:400}
.quiet-link{color:var(--hope-ink);font-size:12px;text-decoration:none;border-bottom:1px solid #c6cac2;padding-bottom:3px;width:fit-content;line-height:1.6}.quiet-link:hover{color:var(--hope-copper);border-color:var(--hope-copper)}
.cinema{position:relative;width:100%;aspect-ratio:1672/941;overflow:hidden;background:#c6c2b6;isolation:isolate;cursor:pointer;touch-action:pan-y;border-radius:2px}
.cinema img,.cinema canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.cinema canvas{opacity:0;transition:opacity .2s}.cinema.is-ready canvas{opacity:1}.cinema:focus-visible{outline-offset:7px}
.scene-caption{display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.5;margin-top:17px;color:var(--hope-muted)}.scene-caption span:last-child{font-size:9px;letter-spacing:.13em;white-space:nowrap}
.hope-promise{display:flex;align-items:center;justify-content:center;gap:clamp(20px,5vw,84px);border-top:1px solid var(--hope-line);border-bottom:1px solid var(--hope-line);padding:22px var(--hope-gutter);font-size:12px;letter-spacing:.03em;background:#eaece5}.hope-promise i{width:4px;height:4px;border-radius:50%;background:#a37b50}
.experience{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);grid-template-rows:1fr auto 1fr;gap:0 clamp(40px,6vw,100px);padding:clamp(70px,8vw,135px) var(--hope-gutter);min-height:82svh;align-content:center;border-bottom:1px solid var(--hope-line)}
.experience__copy{grid-column:2;grid-row:1/3;align-self:end;max-width:500px;min-width:0}.experience__media{grid-column:1;grid-row:1/4;align-self:center;min-width:0}.experience__action{grid-column:2;grid-row:3;align-self:start;display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding-top:27px}
.experience--right{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr)}.experience--right .experience__copy,.experience--right .experience__action{grid-column:1}.experience--right .experience__media{grid-column:2}
.experience--white{background:#fff}.experience--dark{background:#25332f;color:#f4f3ec;border-bottom:0}.experience--dark p,.experience--dark .scene-caption{color:#c2cec6}.experience--dark em,.experience--dark .overline{color:#d3b993}.experience--dark .hope-cta{background:#e8d5b9;color:#26312e;border-color:#e8d5b9}.experience--dark .hope-cta:hover{background:#f4e7d2}.experience--dark .quiet-link{color:#f2f1e9;border-color:#66756c}
.experience__details{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--hope-muted);border-top:1px solid var(--hope-line);padding-top:18px}.experience--dark .experience__details{color:#c2cec6;border-color:#4c5d52}
.experience__details span::before{content:"—";margin-right:10px;color:#a07852}.hope-home .experience__intro{font-size:18px;line-height:1.5;color:inherit;margin-bottom:16px;letter-spacing:-.02em}
.hope-section{padding:100px var(--hope-gutter)}.hope-section__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:50px}.hope-section__heading h2{margin-bottom:0}.hope-section__heading>p{max-width:390px;margin-bottom:0}
.hope-finish{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;background:#e8ebe3}.finish-options{display:flex;gap:24px;justify-content:space-between;margin:30px 0 20px}.finish-option{font:500 11px/1.4 Arial,sans-serif;background:transparent;border:0;padding:0;cursor:pointer;color:#333e35;min-width:60px}.finish-option i{display:block;background:var(--finish);width:54px;height:54px;border-radius:50%;margin:0 auto 15px;border:3px solid #e8ebe3;outline:1px solid #ced3c8;box-shadow:inset 0 3px 8px #0001;transition:outline-color .2s}.finish-option[aria-pressed=true] i{outline:2px solid #6d775d}.hope-home .finish-note{font-size:11px;margin:0;color:#586251}.finish-note span{font-weight:600}
.hope-process{background:#fff}.hope-process__steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin:0}.hope-process__steps li{border-top:1px solid #bbc2b7;padding:22px 0 0}.hope-process__steps li>span{font-family:Georgia,serif;font-size:33px;color:#a07b56;line-height:1}.hope-process__steps h3{margin:26px 0 12px;font-size:20px}.hope-process__steps p{font-size:13px;margin:0;line-height:1.8}
.hope-invite{text-align:center;padding:85px 24px;background:#dce1d4}.hope-invite h2{font-size:clamp(35px,4vw,61px)}.hope-invite .hope-cta{margin-top:5px}
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.journal-item{color:inherit}.journal-item img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto;margin-bottom:25px;transition:filter .2s}.journal-item:hover img{filter:brightness(1.07)}.journal-item>span{display:block;color:#8d6a4b;font-size:9px;letter-spacing:.15em;margin-bottom:13px}.journal-item h3{margin:0 0 12px;font-size:25px;max-width:330px}.journal-item p{font-size:13px;margin:0 0 22px;max-width:320px}.journal-item small{font-size:11px;border-bottom:1px solid #bbc0b5;padding-bottom:4px}
.hope-regions{background:#e9ebe6;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--hope-line)}.hope-regions>div:first-child>p:not(.overline){max-width:420px}.hope-search{display:block;font-size:12px;font-weight:600}.hope-search input{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #aab5a5;padding:17px 0;font:16px Arial;color:var(--hope-ink);margin:8px 0 16px;border-radius:0}.hope-region-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px;max-height:255px;overflow:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin;scrollbar-color:#a0ad97 transparent}.hope-region-links a{font-size:12px;border-bottom:1px solid #d3d9ce;padding:13px 0;color:#334134}.hope-region-links a:hover{color:#865f3c}.hope-home .empty-state{font-size:13px}
.hope-contact{background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%}.hope-contact>div>p:not(.overline){max-width:420px}.contact-phone{display:inline-block;font-size:clamp(24px,2.5vw,36px);font-weight:500;letter-spacing:-.035em;color:#26312e;margin:12px 0}.hope-home .contact-small{font-size:12px}.hope-form{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px;align-content:start;padding:0;border:0;background:none}.hope-form .field{display:flex;flex-direction:column;gap:8px}.hope-form label{font-size:11px;font-weight:600;color:#39423d}.hope-form label>span{font-weight:400;color:#707b74}.hope-form input,.hope-form select,.hope-form textarea{border:1px solid #d0d7cc;background:#fafbf8;padding:13px 12px;border-radius:2px;color:#27312a;font:15px/1.5 Arial;width:100%;min-width:0}.hope-form select{padding-right:20px}.hope-form textarea{resize:vertical;min-height:100px}.hope-home .hope-form__note{font-size:10px;line-height:1.8;grid-column:1/-1;margin:0;color:#697368}.hope-form__note a{text-decoration:underline}.hope-form .hope-cta{grid-column:1/-1;justify-content:space-between;width:100%;margin:0}.hope-form input:focus,.hope-form select:focus,.hope-form textarea:focus{border-color:#907151;outline-color:#907151}
.site-footer{background:#232d29;color:#e9ece4}.hope-home .site-footer p{font-size:13px;color:#b6c0b3}.footer-column a,.footer-column>span{font-size:12px;color:#bec9bb}.footer-column h3{color:#ecece4!important;font-size:12px!important;letter-spacing:0!important;font-weight:600!important}.footer-brand__mark strong{color:white}.footer-bottom{border-top:1px solid #ffffff21!important;color:#bec9bb;font-size:10px}
.floating-actions{right:max(18px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));left:auto;width:auto;display:flex;flex-direction:column;gap:10px;background:none;padding:0;border:0;z-index:65}.floating-actions .floating-button{width:47px;height:47px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#26332e;color:#fff;box-shadow:0 4px 18px #0002;border:1px solid #ffffff4a;min-width:0;padding:0}.floating-actions .floating-button--whatsapp{background:#23835b}.floating-actions .icon{width:21px;height:21px}.floating-actions .floating-button:hover{transform:translateY(-2px)}
@media(min-width:1700px){.experience,.hope-section{padding-left:max(var(--hope-gutter),calc((100vw - 1630px)/2));padding-right:max(var(--hope-gutter),calc((100vw - 1630px)/2))}}
@media(max-width:1200px){.desktop-nav{gap:15px}.desktop-nav>a{font-size:12px}.brand img{width:185px}.hope-hero{gap:32px;grid-template-columns:1fr 1.14fr}.hope-home h1{font-size:45px}.experience{gap:0 40px;min-height:680px}.hope-home h2{font-size:36px}.technical-rail{display:none}.hope-section{padding-top:80px;padding-bottom:80px}.hope-contact,.hope-finish,.hope-regions{gap:6%}}
@media(max-width:1000px){.desktop-nav{display:none}.menu-toggle{display:flex}.header__inner{min-height:74px}.mobile-nav{top:74px;max-height:calc(100dvh - 74px);overflow:auto;background:#f7f6f0;z-index:59}.hope-topline{display:none}.hope-home h1{font-size:40px}.hope-hero{min-height:620px}.experience{grid-template-columns:1.05fr 1fr;gap:0 30px;min-height:670px}.experience--right{grid-template-columns:1fr 1.05fr}.hope-home h2{font-size:32px}.hope-home p{font-size:14px}.hope-cta{font-size:12px;padding:15px 18px;gap:15px}.scene-caption span:last-child{display:none}.hope-process__steps{grid-template-columns:1fr 1fr;gap:32px}.hope-section__heading>p{max-width:290px}.hope-region-links{grid-template-columns:1fr 1fr}.hope-form{gap:18px 14px}.hope-form .field:not(.field--full){grid-column:1/-1}}
@media(max-width:760px){:root{--hope-gutter:24px}.hope-home h1{font-size:clamp(35px,8.4vw,53px);line-height:1.09;max-width:630px;margin-bottom:20px}.hope-home h2{font-size:clamp(31px,7.3vw,42px);line-height:1.13}.hope-home p{font-size:14px;line-height:1.75;margin-bottom:22px}.hope-home .overline{font-size:9px;margin-bottom:19px;letter-spacing:.14em}.hope-hero{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding:40px var(--hope-gutter) 28px;min-height:0}.hope-hero__copy{padding:0}.hope-hero__copy>p:not(.overline){max-width:590px}.hope-hero__copy>.quiet-link{display:none}.hope-hero__visual{margin:0 calc(-1 * var(--hope-gutter));}.hope-hero__visual .scene-caption{padding:0 var(--hope-gutter)}.hope-promise{gap:14px;padding:18px 16px;font-size:10px;letter-spacing:0;justify-content:space-around}.hope-promise i{width:3px;height:3px;flex-shrink:0}.experience{display:flex;flex-direction:column;gap:0;min-height:0;padding:55px var(--hope-gutter);align-items:stretch}.experience__copy{align-self:auto;max-width:none}.experience__media{width:auto;align-self:stretch;margin:6px calc(-1 * var(--hope-gutter)) 0}.experience__media .scene-caption{padding:0 var(--hope-gutter);margin-top:13px;font-size:10px}.experience__details{display:none}.experience__action{padding-top:24px;gap:16px;align-self:auto;align-items:flex-start}.experience__action .quiet-link{font-size:11px}.hope-home .experience__intro{font-size:16px;margin-bottom:13px}.hope-cta{font-size:12px;padding:14px 19px;min-height:50px;gap:24px}.cinema{border-radius:0}.hope-section{padding:55px var(--hope-gutter)}.hope-finish,.hope-regions,.hope-contact{grid-template-columns:1fr;gap:24px}.finish-options{justify-content:flex-start;gap:30px}.finish-option{min-width:50px;font-size:10px}.finish-option i{width:48px;height:48px}.hope-section__heading{display:block;margin-bottom:30px}.hope-section__heading>p{margin-top:22px;max-width:none}.hope-section__heading>.quiet-link{display:inline-block;margin-top:24px}.hope-process__steps{gap:30px 22px}.hope-process__steps h3{font-size:18px;margin-top:22px}.hope-process__steps p{font-size:12px}.hope-process__steps li>span{font-size:28px}.hope-invite{padding:58px 24px}.journal-grid{grid-template-columns:1fr;gap:40px}.journal-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:0 20px}.journal-item img{grid-row:1/5;aspect-ratio:4/5;object-fit:cover;margin:0;width:100%;align-self:stretch;height:100%}.journal-item>span{font-size:8px;margin:3px 0 10px}.journal-item h3{font-size:21px;margin-bottom:10px}.journal-item p{font-size:12px;margin-bottom:18px}.journal-item small{font-size:10px;width:fit-content}.hope-region-links{grid-template-columns:repeat(3,1fr);max-height:225px}.hope-region-links a{font-size:11px;padding:13px 0}.hope-form{grid-template-columns:1fr 1fr;gap:18px 15px}.hope-form .field:not(.field--full){grid-column:auto}.hope-form input,.hope-form select,.hope-form textarea{font-size:16px;padding:12px 10px}.hope-form label{font-size:11px}.hope-form .hope-cta{font-size:12px}.contact-phone{font-size:30px}.floating-actions{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));gap:8px}.floating-actions .floating-button{width:44px;height:44px}.floating-button::before,.floating-button::after{display:none!important}.footer-main{gap:32px!important}.footer-bottom{padding-right:65px;padding-bottom:30px}.brand img{width:182px}.header__inner{min-height:68px}.mobile-nav{top:68px;max-height:calc(100dvh - 68px);padding-bottom:90px}.mobile-nav a{font-size:16px}.hope-home section{scroll-margin-top:78px}.hope-contact{padding-bottom:85px}}
@media(max-width:380px){:root{--hope-gutter:20px}.hope-home h1{font-size:34px}.hope-home h2{font-size:30px}.hope-form{grid-template-columns:1fr}.hope-form .field{grid-column:1/-1}.hope-region-links{grid-template-columns:1fr 1fr}.finish-options{gap:20px}.brand img{width:170px}.hope-promise{font-size:9px}.journal-item h3{font-size:19px}}
@media(min-width:761px) and (max-width:900px){.hope-hero{display:flex;flex-direction:column;align-items:stretch;gap:35px;min-height:0;padding-top:48px}.hope-hero__copy{max-width:660px}.hope-home h1{font-size:49px}.hope-home h2{font-size:40px}.hope-hero__copy>p:not(.overline){max-width:580px}.experience{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding-top:70px;padding-bottom:70px}.experience__copy{max-width:650px;align-self:auto}.experience__details{display:none}.experience__media{align-self:stretch;width:100%;margin-top:12px}.experience__action{padding-top:25px;align-self:auto}.hope-contact,.hope-regions,.hope-finish{grid-template-columns:1fr;gap:25px}.hope-form .field:not(.field--full){grid-column:auto}.hope-form{grid-template-columns:1fr 1fr}.hope-region-links{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;animation-iteration-count:1!important}.cinema{cursor:default}}
