.header{gap:20px}.header nav{gap:16px}.header nav a[aria-current="page"]{color:var(--copper);text-decoration:underline;text-underline-offset:7px}.page-intro{padding:45px 8% 65px;background:var(--green);color:var(--cream)}.breadcrumb{font-size:14px;color:#d9d6c9;display:inline-block;margin-bottom:38px;border-bottom:1px solid #ffffff55}.page-intro .eyebrow{color:#dbbc92;margin-bottom:20px}.page-intro h1{font-size:clamp(44px,5.5vw,78px);max-width:1000px;margin-bottom:20px}.page-intro h1 em{color:#e5d6b4}.intro-copy{max-width:750px;font-size:18px;color:#e0e2d7;margin-bottom:0}.detail-section{padding-top:65px;padding-bottom:65px}.detail-section>p{max-width:850px;font-size:18px}.detail-section h2{font-size:clamp(36px,3.8vw,55px)}.tinted{background:var(--paper)}.detail-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.detail-cards article{border-top:1px solid #26332840;padding:28px 0}.detail-cards p{max-width:530px}.detail-cards h3{font-size:36px}.detail-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin:28px 0 35px}.detail-list li{border-bottom:1px solid #26332830;padding:16px 0;font-size:17px}.page-jumps{padding:24px 8%;display:flex;gap:15px 26px;flex-wrap:wrap;background:var(--paper);border-bottom:1px solid #26332825}.page-jumps a{font-size:14px;border-bottom:1px solid #26332870}.inline-journey{padding:25px 0 10px;text-align:left}.inline-journey ol{text-align:center}.sponsor-table{border-collapse:collapse;width:100%;max-width:900px;margin:35px 0}.sponsor-table caption{text-align:left;font-weight:600;padding-bottom:16px}.sponsor-table th,.sponsor-table td{border-bottom:1px solid #26332830;padding:18px 12px;text-align:left}.sponsor-table th{font-weight:500}.sponsor-table thead{background:var(--green);color:var(--cream)}.sponsor-table td{font:32px var(--serif);white-space:nowrap}.founder-story{max-width:none;margin:0}.founder-story blockquote{margin:0 0 35px;font:30px/1.5 var(--serif)}.measure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 45px}.measure-grid article{border-top:1px solid #26332840;padding:24px 0}.measure-grid h3{font-size:31px}.draft-note{padding:16px 20px;border-left:3px solid var(--copper);background:#aa532f0b;color:#535c50;font-size:15px!important}.footer-links{display:flex;flex-wrap:wrap;gap:16px 24px;align-content:start}.footer-links a{font-size:15px;border-bottom:1px solid #26332840}.footer-links a:last-child{flex-basis:100%;border:0}.section-more{margin-top:25px;grid-column:1/-1}.problem .section-more,.founding .section-more{color:#e5d6b4}.detail-section>.text-link+.text-link{margin-left:25px}.inquiry-sections{padding-top:25px}.inquiry-panel{padding:48px 0;border-bottom:1px solid #26332835;scroll-margin-top:25px}.inquiry-panel h2{font-size:42px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0}.form-field label{display:block;font-size:16px;margin-bottom:8px}.form-field input,.form-field textarea,.form-field select{font:16px/1.5 var(--sans);background:#fff9;color:var(--ink);border:1px solid #88917f;border-radius:0;width:100%;padding:12px;min-height:50px}.form-field textarea{resize:vertical}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:3px solid var(--copper);outline-offset:3px}.inquiry-form button:disabled{opacity:.6;cursor:not-allowed;transform:none}.final-cta>p:not(.eyebrow){max-width:780px;margin-left:auto;margin-right:auto}.pathways>a>span:last-child{font-size:14px}.story-categories p{font-size:15px}.footer-bottom{gap:25px}
@media(min-width:1001px) and (max-width:1350px){.header{gap:12px;padding-left:2%;padding-right:2%}.header nav{gap:10px}.header nav a{font-size:12px}.header .nav-support{font-size:12px;padding:10px}.header .brand-top{font-size:18px}.header .brand-middle{font-size:9px}}@media(max-width:1000px){.page-intro{padding-left:6%;padding-right:6%}.header nav{gap:20px}.header nav a{font-size:16px}.header{gap:15px}}@media(max-width:650px){.page-intro{padding:30px 6% 45px}.page-intro h1{font-size:43px}.intro-copy{font-size:16px}.detail-section{padding-top:45px;padding-bottom:45px}.detail-section>p{font-size:16px}.detail-cards,.detail-list,.measure-grid,.form-grid{grid-template-columns:1fr}.page-jumps{padding:22px 6%}.detail-cards{gap:8px}.detail-cards h3{font-size:32px}.detail-list li{font-size:16px;padding:12px 0}.founder-story blockquote{font-size:26px}.sponsor-table th,.sponsor-table td{padding:14px 8px;font-size:14px}.sponsor-table td{font-size:26px}.detail-section>.text-link+.text-link{margin-left:0;margin-top:20px;display:table}.header{gap:8px}.inquiry-panel h2{font-size:36px}.header .nav-support{font-size:11px}.footer-links{gap:20px}}
.placeholder-photo{margin:0 0 38px;grid-column:1/-1;min-width:0}.placeholder-photo img{display:block;width:100%;height:auto;aspect-ratio:2.25;object-fit:cover;object-position:center 45%;background:var(--paper)}.placeholder-photo figcaption{display:flex;flex-wrap:wrap;gap:5px 14px;padding:12px 0;color:var(--muted);font:13px/1.6 var(--sans)}.placeholder-photo figcaption span{color:var(--ink);font-weight:600}.page-photo-band{padding:50px 8% 0}.page-photo-band .placeholder-photo{margin-bottom:0}.detail-section>.placeholder-photo{margin-top:32px;max-width:1200px}.founder-story{padding-top:60px}@media(max-width:650px){.page-photo-band{padding:28px 6% 0}.placeholder-photo img{aspect-ratio:1.35}.placeholder-photo figcaption{font-size:12px}.placeholder-photo{margin-bottom:26px}}

/* Supplied photographs: non-destructive square crops, paired with page content. */
.site-photo{margin:0;min-width:0;width:100%;align-self:start}.site-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:22px;background:var(--paper)}.site-photo figcaption{font:14px/1.6 var(--sans);color:var(--muted);padding:13px 4px 0}.photo-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6%;align-items:start}.photo-copy{min-width:0}.photo-copy>p{font-size:17px}.photo-copy .split{display:block}.photo-copy h2{font-size:clamp(35px,3.3vw,52px)}.photo-copy .section-more{margin-top:28px}.photo-copy .detail-list{grid-template-columns:1fr;margin-top:15px}.photo-copy .detail-list li{padding:10px 0}.photo-copy .sponsor-table{margin:25px 0}.photo-copy .sponsor-table th,.photo-copy .sponsor-table td{padding:13px 8px}.photo-copy .sponsor-table td{font-size:28px}.photo-copy .journey ol{grid-template-columns:repeat(3,1fr);gap:30px 0}.photo-copy .journey h3{font-size:30px}.founder-story.photo-story{max-width:none}.founder-story.photo-story blockquote{font-size:25px}.photo-story.mission{padding-top:75px}.photo-copy .eyebrow{margin-bottom:20px}
@media(max-width:850px){.photo-story{grid-template-columns:1fr;gap:32px}.site-photo{max-width:560px;margin-left:auto;margin-right:auto}.photo-copy>p{font-size:16px}.site-photo img{border-radius:18px}.photo-copy h2{font-size:42px}.founder-story.photo-story blockquote{font-size:25px}}

/* Legacy Hunt: portrait introduction and a separate, full-width journey. */
#legacy-hunt.photo-story{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);column-gap:7%;row-gap:42px;align-items:center}
#legacy-hunt .site-photo{max-width:400px;justify-self:start;margin:0}
#legacy-hunt .site-photo img{aspect-ratio:4/5;object-position:50% 65%!important}
#legacy-hunt .photo-copy h2{font-size:clamp(38px,3.8vw,57px)}
#legacy-hunt .photo-copy>p{max-width:660px}
#legacy-hunt>.inline-journey{grid-column:1/-1;border-top:1px solid #26332830;padding:32px 0 0}
#legacy-hunt>.inline-journey h3{font-size:32px;margin-bottom:0}
#legacy-hunt>.inline-journey ol{grid-template-columns:repeat(6,minmax(0,1fr));margin:32px 0 0}
@media(max-width:850px){#legacy-hunt.photo-story{grid-template-columns:1fr;row-gap:30px}#legacy-hunt .site-photo{max-width:400px;justify-self:center}#legacy-hunt>.inline-journey ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 0}}

/* The Legacy Hunt path draws once as it enters view, then reveals each step. */
#legacy-hunt>.inline-journey ol{position:relative}
#legacy-hunt>.inline-journey ol::after{content:"";position:absolute;z-index:1;top:0;left:0;width:100%;height:2px;background:var(--copper);transform:scaleX(0);transform-origin:left center;pointer-events:none}
#legacy-hunt>.inline-journey.journey-ready li{opacity:0;transform:translateY(14px)}
#legacy-hunt>.inline-journey.journey-ready li::before{z-index:2;transform:scale(0)}
#legacy-hunt>.inline-journey.journey-ready.is-visible ol::after{animation:journey-line 1.2s cubic-bezier(.22,.7,.25,1) forwards}
#legacy-hunt>.inline-journey.journey-ready.is-visible li{animation:journey-step .5s ease forwards}
#legacy-hunt>.inline-journey.journey-ready.is-visible li::before{animation:journey-dot .35s ease-out forwards}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(1),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(1)::before{animation-delay:.08s}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(2),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(2)::before{animation-delay:.25s}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(3),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(3)::before{animation-delay:.42s}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(4),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(4)::before{animation-delay:.59s}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(5),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(5)::before{animation-delay:.76s}
#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(6),#legacy-hunt>.inline-journey.journey-ready.is-visible li:nth-child(6)::before{animation-delay:.93s}
@keyframes journey-line{to{transform:scaleX(1)}}
@keyframes journey-step{to{opacity:1;transform:translateY(0)}}
@keyframes journey-dot{0%{transform:scale(0)}70%{transform:scale(1.6)}100%{transform:scale(1)}}
@media(max-width:850px){#legacy-hunt>.inline-journey ol::after{display:none}}
@media(prefers-reduced-motion:reduce){#legacy-hunt>.inline-journey.journey-ready li{opacity:1;transform:none}#legacy-hunt>.inline-journey.journey-ready li::before{transform:none}#legacy-hunt>.inline-journey.journey-ready.is-visible ol::after,#legacy-hunt>.inline-journey.journey-ready.is-visible li,#legacy-hunt>.inline-journey.journey-ready.is-visible li::before{animation:none}#legacy-hunt>.inline-journey ol::after{display:none}}

/* Foundations Camp follows the same portrait-and-introduction composition. */
#foundations-camp.photo-story{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);column-gap:7%;row-gap:42px;align-items:center}
#foundations-camp .site-photo{max-width:400px;justify-self:start;margin:0}
#foundations-camp .site-photo img{aspect-ratio:4/5;object-position:50% 72%!important}
#foundations-camp .photo-copy h2{font-size:clamp(38px,3.8vw,57px)}
#foundations-camp .photo-copy>p{max-width:660px}
#foundations-camp>.camp-topics{grid-column:1/-1;border-top:1px solid #26332830;padding:32px 0 0}
#foundations-camp .camp-topics h3{font-size:32px;margin-bottom:0}
.dialog-topics .detail-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 30px;margin-bottom:0}
.why-pathway-topics{margin-top:30px}.why-pathway-topics .detail-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px}.why-pathway-topics h3{font-size:32px;margin-bottom:10px}
#stewardship .dialog-topics,#family-weekend .dialog-topics{margin-top:32px}
@media(max-width:850px){#foundations-camp.photo-story{grid-template-columns:1fr;row-gap:30px}#foundations-camp .site-photo{max-width:400px;justify-self:center}.dialog-topics .detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.dialog-topics .detail-list{grid-template-columns:1fr}}

/* On desktop, every two-column photo grows with its neighboring copy and crops naturally. */
@media(min-width:851px){
 .photo-story{align-items:stretch}
 .photo-story .site-photo{position:relative;overflow:hidden;max-width:none;height:auto;min-height:0;align-self:stretch;justify-self:stretch;border-radius:22px}
 .photo-story .site-photo img{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;border-radius:22px}
 .photo-story .site-photo figcaption{position:absolute;inset:auto 0 0;padding:70px 18px 16px;color:#fff;background:linear-gradient(transparent,#17241dcc);border-radius:0 0 22px 22px}
}

.topic-button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;background:transparent;border:0;padding:8px 0;color:var(--ink);font:inherit;cursor:pointer}.topic-button span{font-size:24px;color:var(--copper);line-height:1}.topic-button:hover{color:var(--copper)}.topic-button:focus-visible,.dialog-close:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.topic-dialog{border:0;border-radius:20px;background:var(--cream);color:var(--ink);padding:48px;width:min(580px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;box-shadow:0 24px 100px #0005}.topic-dialog::backdrop{background:#17241dcc}.topic-dialog h2{font-size:44px;line-height:1.1;margin-bottom:22px}.topic-dialog>p:not(.eyebrow){font-size:17px;line-height:1.8;margin-bottom:30px}.topic-dialog .eyebrow{padding-right:22px;font-size:11px}.dialog-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--ink);font-size:30px;cursor:pointer}.dialog-close:hover{background:var(--paper)}body.topic-modal-open{overflow:hidden}@media(max-width:650px){.topic-dialog{padding:44px 24px 28px}.topic-dialog h2{font-size:36px}.topic-dialog>p:not(.eyebrow){font-size:16px}}

/* Align header and footer content with the existing 1400px body container on wide screens. */
@media(min-width:1600px){
 .header,.page-intro,.hero-content,.page-jumps,footer{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}
}

/* Keep Ranch Partners sections and footer contents on the shared content edges. */
.ranch-partners-page .detail-section>p{max-width:none}
@media(min-width:1001px){footer .footer-links{justify-content:flex-end;text-align:right}}

/* Text uses the full content area when a section does not share space with an image. */
.detail-section:not(.photo-story)>p{max-width:none}

/* Founding partnerships use the full content width and explain alternate support in place. */
.founding-100-page .detail-section>p{max-width:none}.founding-100-page .sponsor-table{max-width:none}.founding-100-page .sponsor-table th:first-child{width:70%}.in-kind-dialogs{margin-top:34px}.in-kind-dialogs .detail-list{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:30px}
@media(max-width:850px){.in-kind-dialogs .detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.founding-100-page .sponsor-table th:first-child{width:auto}.in-kind-dialogs .detail-list{grid-template-columns:1fr}}

/* Give each participation path enough context to help visitors choose a next step. */
.participation-intro{max-width:none!important;margin-bottom:44px}.participation-cards{gap:10px 50px}.participation-cards article{display:flex;flex-direction:column;padding:32px 0 38px}.participation-cards h3{margin:10px 0 18px}.participation-cards p{line-height:1.75}.participation-cards .action-label{margin:24px 0 8px;color:var(--copper);font-size:11px;line-height:1.4;font-weight:700;letter-spacing:1.7px}.participation-cards .action-detail{margin-bottom:26px;color:var(--muted);font-size:15px}.participation-cards .text-link{align-self:flex-start;margin-top:auto}
@media(max-width:650px){.participation-intro{margin-bottom:30px}.participation-cards{gap:0}.participation-cards article{padding:28px 0 32px}.participation-cards h3{margin-top:8px}.participation-cards .action-label{margin-top:20px}}

/* Contact is a directory; each inquiry keeps its own focused placeholder page. */
.contact-directory>p{max-width:780px!important;margin-bottom:42px}.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}.contact-option{position:relative;display:grid;grid-template-columns:1fr auto;gap:9px 24px;align-items:center;padding:25px 0;border-top:1px solid #26332840}.contact-option .small-number{grid-column:1;margin:0;font-size:15px;color:var(--ink);letter-spacing:0;text-transform:none}.contact-option strong{grid-column:1;color:var(--muted);font-size:14px;line-height:1.65;font-weight:400;max-width:550px}.contact-option-arrow{grid-column:2;grid-row:1/3;color:var(--copper);font-size:24px}.contact-option:hover .small-number,.contact-option:hover .contact-option-arrow{color:var(--copper)}.inquiry-form-page{max-width:none;margin:0}.inquiry-form-page .back-link{display:inline-block;margin-bottom:30px;border-bottom:1px solid #26332870;font-size:14px}.inquiry-form-page h2{margin-bottom:25px}.inquiry-form-page .form-grid{column-gap:48px}
@media(max-width:650px){.contact-directory>p{margin-bottom:28px}.contact-options{grid-template-columns:1fr}.contact-option{padding:21px 0}.inquiry-form-page .back-link{margin-bottom:24px}}

/* Keep inner-page footers compact and easy to scan on phones. */
@media(max-width:650px){
 .inner-page footer{padding:36px 6% calc(22px + env(safe-area-inset-bottom));gap:24px}
 .inner-page footer .wordmark{align-items:flex-start}
 .inner-page footer .brand-top{font-size:19px;letter-spacing:2.4px}
 .inner-page footer .brand-middle{font-size:9px;letter-spacing:1.35px}
 .inner-page footer .brand-bottom{font-size:8px;letter-spacing:3.6px;margin-top:4px}
 .inner-page footer>div>p{font-size:14px;line-height:1.65;margin:17px 0 0}
 .inner-page .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
 .inner-page .footer-links a{font-size:15px;line-height:1.4;padding:11px 0}
 .inner-page .footer-links a:last-child{grid-column:1/-1;padding:16px 0 0}
 .inner-page .footer-bottom{display:grid;gap:5px;padding-top:18px;line-height:1.5}
 .inner-page .footer-bottom span{margin:0}
}

/* A restrained Redport builder credit, matching the treatment used on AccuClean. */
.footer-bottom{align-items:center}
.footer-meta{display:flex;align-items:center;gap:25px;min-width:0}
.builder-credit{display:inline-flex;align-items:center;gap:7px;color:var(--muted);white-space:nowrap;flex-shrink:0}
.builder-credit img{display:block;width:76px;height:auto;margin:0}
.builder-credit:hover{color:var(--ink)}
.form-note{color:var(--muted);font-size:15px!important}
.form-trap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.inquiry-form button[type="submit"]{display:inline-flex;align-items:center;gap:10px}
.inquiry-form button[type="submit"] .htmx-indicator{display:none}
.inquiry-form button[type="submit"].htmx-request>span:first-child{display:none}
.inquiry-form button[type="submit"].htmx-request .htmx-indicator{display:inline}
.form-result{margin-top:22px}
.form-message{padding:17px 20px;border-left:3px solid var(--green);background:#2633280b}
.form-message p{margin:0}
.form-message-error{border-left-color:var(--copper);background:#aa532f0b}
.form-message strong{display:block;margin-bottom:4px}
@media(max-width:650px){
 .footer-bottom{display:grid;gap:14px}
 .footer-meta{display:grid;gap:5px}
 .footer-bottom .footer-meta span{display:block;margin:0}
 .footer-bottom .footer-meta #year,.builder-credit span{display:inline;margin:0}
 .builder-credit{width:max-content;margin-top:5px}
}
