/*
Theme Name: Reflectt
Description: Reflectt’s customizable one-page theme. Includes staged opening animation, global accent colors, section ordering and native block-editor sections.
Version: 2.4.1
Requires at least: 6.6
Requires PHP: 7.4
Author: Reflectt
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: reflectt
Tags: one-column, two-columns, theme-options, custom-colors, block-patterns
*/
@font-face{font-family:ReflecttSerif;src:url('assets/fonts/cormorant-garamond.ttf') format('truetype');font-weight:300 700;font-style:normal;font-display:swap}
:root{--black:#000;--panel:#181818;--white:#f2f2ef;--muted:#bfc1bf;--line:#303030;--accent:#ff7608;--accent-mid:#f85f02;--accent-deep:#e35000;--accent-gradient:linear-gradient(135deg,#ff7608,#f85f02 52%,#e35000);--display:ReflecttSerif,Georgia,serif;--content-width:1200px;--body-size:18px;--section-space:1;--card-radius:70px;--card-image-height:490px;--intro-step:650ms;--admin-offset:0px;--header-offset:0px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#000}body{margin:0;background:#000;color:var(--white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}.admin-bar{--admin-offset:32px}.has-reflectt-header{--header-offset:112px}img{display:block;max-width:100%;height:auto}svg{max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}p{margin:0;font-size:var(--body-size);line-height:1.85}h1,h2,h3{margin:0;font-family:var(--display);font-weight:500;line-height:1.09;letter-spacing:-.025em;overflow-wrap:anywhere}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.wrap{width:min(var(--content-width),calc(100% - 128px));margin-inline:auto}section[id]{scroll-margin-top:32px}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:12px;z-index:99999;padding:12px 18px;background:var(--white);color:#000;transform:translateY(-180%)}.skip-link:focus{transform:none}.masthead{height:112px;display:flex;align-items:center}.brand{display:flex;align-items:center;gap:21px}.brand .header-logo{width:40px;height:42px;object-fit:contain}.brand-wordmark{width:175px}.wordmark{display:block;width:100%;height:auto}.wordmark-text{font-family:Georgia,serif;font-weight:700;letter-spacing:.06em}.eyebrow{font-family:var(--display);color:var(--accent);font-size:29px;font-weight:500;line-height:1.3;letter-spacing:.01em}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:16px;line-height:1.6;padding:12px 0;margin-top:28px;color:var(--accent);max-width:100%}.text-link .link-label{min-width:0;overflow-wrap:anywhere}.text-link .arrow{font-size:25px;flex:0 0 auto}.text-link:hover .link-label{text-decoration:underline;text-underline-offset:5px}
/* Opening: identity above; the descriptor and explore cue stay together below. */
.hero{min-height:calc(100vh - var(--admin-offset) - var(--header-offset));min-height:calc(100svh - var(--admin-offset) - var(--header-offset));display:grid;grid-template-rows:1fr auto;text-align:center;padding:32px 0 48px}.hero-identity{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px 0 78px;min-width:0}.hero-brand{display:flex;flex-direction:column;align-items:center;width:100%}.hero-emblem{width:clamp(145px,24svh,230px);height:clamp(145px,24svh,230px);margin-bottom:42px}.hero-emblem svg,.hero-custom-logo{width:100%;height:100%;object-fit:contain}.hero-wordmark{width:min(540px,83vw);font-size:clamp(40px,6vw,75px);margin:0}.hero-tagline{display:flex;flex-wrap:wrap;justify-content:center;column-gap:.4em;margin-top:30px;color:var(--accent);font-family:var(--display);font-size:29px;font-weight:500;letter-spacing:.035em;line-height:1.4}.hero-tagline>span{display:inline-block}.hero-bottom{display:flex;flex-direction:column;align-items:center;gap:18px}.hero-descriptor{font-size:var(--body-size);color:var(--muted);max-width:650px;line-height:1.7}.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;min-height:44px}.scroll-cue span:last-child{font-size:23px;color:var(--accent);line-height:1}.hero-upload{width:min(760px,100%);height:clamp(200px,40svh,420px)}.hero-banner{width:100%;height:100%;object-fit:cover;object-position:var(--media-x,50%) var(--media-y,50%)}.hero-banner.fit-contain{object-fit:contain}.hero.is-animated .intro-reveal{animation:reflectt-intro .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(150ms + var(--reveal-step)*var(--intro-step))}@keyframes reflectt-intro{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.legacy-intro{padding:100px 0;text-align:center}.legacy-intro h2{font-size:56px;margin-bottom:24px}.legacy-intro p{color:var(--muted)}
/* Audience cards keep all copy inside the image frame. */
.story{padding:calc(110px * var(--section-space)) 0;min-height:100svh;display:flex;align-items:center}.story-frame{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:720px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:68px 72px;border-radius:0 var(--card-radius) 0 var(--card-radius)}.story-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--media-x,50%) var(--media-y,50%);z-index:-2}.story-frame:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,var(--shade,.91)) 34%,rgba(0,0,0,.58) 56%,rgba(0,0,0,.08) 84%)}.story-copy{grid-column:1;min-width:0;padding:0 28px 0 0}.story h2{font-size:60px;margin:22px 0 28px;max-width:520px}.story p{color:var(--muted);max-width:460px}.story .principle{margin-top:30px;font-size:max(15px,calc(var(--body-size) - 2px));line-height:1.7;color:#e5e7e4}.story-creators .story-copy{grid-column:2;padding:0 0 0 28px}.story-creators .story-frame:after{background:linear-gradient(90deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.1) 22%,rgba(0,0,0,var(--shade,.9)) 49%,rgba(0,0,0,.96) 80%)}.story-founder .story-frame{padding:0;overflow:visible;border-radius:0}.story-founder .story-frame:after{display:none}.story-founder.has-backdrop .story-frame{overflow:hidden;padding:40px;border-radius:0 var(--card-radius) 0 var(--card-radius)}.story-founder.has-backdrop .story-frame:after{display:block}.founder-mark{grid-column:2;grid-row:1;padding-left:85px;min-width:0}.founder-portrait{width:100%;height:610px;object-fit:cover;object-position:var(--media-x,50%) var(--media-y,50%);border-radius:0 var(--card-radius) 0 var(--card-radius)}.founder-monogram{width:100%;aspect-ratio:1;border:1px solid var(--accent-deep);color:var(--accent);display:grid;place-items:center;font:180px var(--display);border-radius:50%}.portrait-caption{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-top:26px}.portrait-caption span:first-child{font:32px var(--display)}.portrait-caption span:last-child{font-size:12px;color:var(--muted);line-height:1.6}
.section-heading{text-align:center}.section-heading h2{font-size:66px;margin-top:15px}.section-intro{font-size:var(--body-size);line-height:1.8;color:var(--muted);margin:22px auto 0;max-width:620px}.service{min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:center;padding:calc(100px * var(--section-space)) 0}.service>.section-heading{grid-column:1/-1;margin-bottom:65px}.service-photo{height:var(--card-image-height);width:100%;object-fit:cover;object-position:var(--media-x,50%) var(--media-y,50%);border-radius:0 0 0 var(--card-radius)}.service-body{background:var(--panel);padding:55px 52px;min-height:var(--card-image-height);display:flex;flex-direction:column;justify-content:center;border-radius:0 var(--card-radius) 0 0;min-width:0}.service-index{font:29px/1.1 var(--display);color:var(--accent);margin-bottom:20px}.service h3{font-size:46px;margin-bottom:22px}.service p{font-size:var(--body-size);line-height:1.85;color:var(--muted)}.service-outcome{border-top:1px solid #383838;margin-top:27px;padding-top:22px;font-size:16px!important;color:#e4e6e3!important}.service:nth-child(even) .service-photo{grid-column:2;grid-row:1;border-radius:0 var(--card-radius) 0 0}.service:nth-child(even) .service-body{grid-column:1;grid-row:1;border-radius:0 0 0 var(--card-radius)}.service-placeholder{display:grid;place-items:center;background:#202020;color:#aaa;font:60px var(--display)}
.process{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-block:calc(125px * var(--section-space))}.process .section-heading{max-width:850px;margin:0 auto 85px}.process .section-heading h2{font-size:61px}.process-grid{display:grid;grid-template-columns:repeat(var(--step-columns,3),minmax(0,1fr));gap:70px}.step-number{font:22px/1.2 var(--display);letter-spacing:.035em;color:var(--accent);margin-bottom:26px;text-transform:lowercase}.process h3{font-size:34px;margin-bottom:23px}.process p{font-size:var(--body-size);line-height:1.85;color:var(--muted)}.values{min-height:100svh;padding-block:calc(110px * var(--section-space))}.values .section-heading{margin-bottom:65px}.values-photo{height:475px;width:100%;object-fit:cover;object-position:var(--media-x,50%) var(--media-y,50%);border-radius:0 var(--card-radius) 0 var(--card-radius)}.values-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:100px;padding:60px 25px 0}.values .eyebrow{font-size:27px}.values h3{font-size:35px;line-height:1.2;margin:18px 0}.values p{color:var(--muted)}
.faq{min-height:100svh;padding:calc(150px * var(--section-space)) 0 100px}.faq .section-heading h2{font-size:62px}.question-symbol{width:126px;height:126px;display:block;margin:38px auto 62px;color:var(--accent)}.faq-group{max-width:850px;margin:0 auto 95px}.faq-group-title{text-align:center;font-size:36px;margin:0 0 36px}.faq-group:last-child{margin-bottom:0}details{border-bottom:1px solid var(--line);background:#000}summary{list-style:none;text-align:center;position:relative;cursor:pointer;padding:31px 60px;font-size:17px;line-height:1.6;color:#d4dcd5}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:18px;top:30px;color:var(--accent);font-size:23px;line-height:1.1}details[open] summary:after{content:'−'}details[open] summary{color:var(--accent)}.faq-answer{text-align:center;font-size:max(16px,calc(var(--body-size) - 1px));line-height:1.9;color:var(--muted);padding:0 50px 32px}.contact{min-height:83svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:calc(120px * var(--section-space)) 0 100px}.contact h2{font-size:66px;max-width:650px}.contact p{color:var(--muted);margin:33px auto}.contact-email{font-family:var(--display);color:var(--accent);font-size:46px;line-height:1.4;max-width:100%;overflow-wrap:anywhere}.contact-email:hover{text-decoration:underline;text-underline-offset:6px}.site-footer{text-align:center;color:#858985;font-size:12px;padding:34px 20px 40px}
/* New WordPress block sections inherit the same typography and accent. */
.reflectt-extra{min-height:100svh;padding-block:calc(110px * var(--section-space));display:flex;flex-direction:column;justify-content:center;overflow-wrap:anywhere}.reflectt-extra h2{font-size:60px;margin:0 0 30px}.reflectt-extra h3{font-size:35px;margin:0 0 22px}.reflectt-extra p{color:var(--muted);margin-bottom:24px}.reflectt-extra a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.reflectt-extra .wp-block-image{margin:40px 0}.reflectt-extra .wp-block-image img{border-radius:0 var(--card-radius) 0 var(--card-radius);max-width:100%;height:auto}.reflectt-extra .wp-block-columns{gap:50px;margin-block:45px}.reflectt-extra .wp-block-cover{border-radius:0 var(--card-radius) 0 var(--card-radius);overflow:hidden}.reflectt-extra .wp-block-button__link{background:var(--accent);color:#000;border-radius:5px;text-decoration:none}.reflectt-extra .reflectt-brand-gallery img{object-fit:contain!important;max-height:150px;border-radius:0;padding:20px}.has-reflectt-accent-color,.reflectt-accent{color:var(--accent)!important}.has-reflectt-accent-background-color{background-color:var(--accent)!important}.has-reflectt-accent-border-color{border-color:var(--accent)!important}.has-black-color{color:#000}.has-soft-white-color{color:var(--white)}.has-panel-gray-background-color{background:var(--panel)}.simple-page{min-height:70svh;padding:80px 0;max-width:900px}.simple-page h1{font-size:60px;margin-bottom:35px}.simple-page h2,.simple-page h3{margin:1.5em 0 .7em}.simple-page p{margin-bottom:1.2em}.simple-page a{color:var(--accent);text-decoration:underline}.simple-page .post-excerpt{padding:25px 0;border-bottom:1px solid var(--line)}.simple-page input{max-width:100%;padding:10px}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.story-frame{padding:55px 42px}.story h2{font-size:53px}.story p{font-size:17px}.story-creators .story-copy{padding-left:24px}.founder-mark{padding-left:40px}.service-body{padding:35px}.service h3{font-size:38px}.process-grid{gap:30px}.values-grid{gap:45px}.values h3{font-size:31px}.section-heading h2{font-size:54px}}
@media(max-width:782px){.admin-bar{--admin-offset:46px}}
@media(max-width:680px){.wrap{width:calc(100% - 44px)}.masthead{height:92px}.has-reflectt-header{--header-offset:92px}.brand{gap:16px}.brand .header-logo{width:32px;height:34px}.brand-wordmark{width:145px}.hero{padding:24px 0 30px}.hero-identity{padding:35px 0 68px}.hero-emblem{width:clamp(120px,22svh,175px);height:clamp(120px,22svh,175px);margin-bottom:34px}.hero-wordmark{width:min(300px,100%);font-size:43px}.hero-tagline{font-size:22px;margin-top:24px;column-gap:.3em;letter-spacing:.005em}.hero-descriptor{font-size:15px;max-width:330px}.hero-bottom{gap:17px}.scroll-cue{font-size:10px}.hero-upload{height:260px}.eyebrow{font-size:25px}.story{padding:calc(75px * var(--section-space)) 0}.story-frame{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-height:720px;padding:50px 26px;border-radius:0 min(var(--card-radius),42px) 0 min(var(--card-radius),42px)}.story-copy,.story-creators .story-copy{padding:0;order:1}.story-frame:after,.story-creators .story-frame:after{background:linear-gradient(180deg,rgba(0,0,0,.58),rgba(0,0,0,var(--shade,.9)) 35%,rgba(0,0,0,.96))}.story h2{font-size:46px;margin:20px 0 24px}.story p{font-size:var(--body-size);line-height:1.8}.story .principle{font-size:15px;margin-top:25px}.text-link{font-size:15px;margin-top:22px}.story-founder .story-frame{min-height:0}.story-founder .story-copy{padding-top:38px}.founder-mark{padding:0;order:0}.founder-portrait{height:440px;width:100%;border-radius:0 min(var(--card-radius),55px) 0 min(var(--card-radius),55px)}.founder-monogram{height:280px;width:280px;max-width:100%;margin:auto}.portrait-caption{margin-top:20px}.portrait-caption span:first-child{font-size:28px}.portrait-caption span:last-child{font-size:11px}.section-heading h2{font-size:48px}.section-intro{font-size:16px}.service{display:flex;flex-direction:column;padding:calc(65px * var(--section-space)) 0}.service>.section-heading{margin-bottom:50px}.service-photo,.service:nth-child(even) .service-photo{height:min(var(--card-image-height),285px);border-radius:0 min(var(--card-radius),45px) 0 0}.service-body,.service:nth-child(even) .service-body{padding:32px 29px 38px;min-height:0;border-radius:0 0 0 min(var(--card-radius),45px)}.service h3{font-size:38px}.service p{font-size:17px}.service-index{font-size:26px}.process{padding-block:calc(100px * var(--section-space))}.process .section-heading{margin-bottom:60px}.process .section-heading h2{font-size:46px}.process-grid{grid-template-columns:1fr;gap:45px}.step-number{margin-bottom:15px;font-size:22px}.process h3{font-size:34px;margin-bottom:17px}.values{padding-block:calc(95px * var(--section-space))}.values .section-heading{margin-bottom:42px}.values .section-heading h2{font-size:48px}.values-photo{height:285px;border-radius:0 min(var(--card-radius),45px) 0 min(var(--card-radius),45px)}.values-grid{grid-template-columns:1fr;padding:42px 0 0;gap:46px}.values h3{font-size:34px}.values p{font-size:17px}.faq{padding:calc(100px * var(--section-space)) 0 70px}.faq .section-heading h2{font-size:46px}.question-symbol{width:106px;height:106px;margin:32px auto 50px}.faq-group{margin-bottom:70px}.faq-group-title{font-size:33px;margin-bottom:20px}summary{font-size:16px;padding:25px 29px 25px 10px}summary:after{right:5px;top:26px}.faq-answer{font-size:16px;padding:0 15px 25px}.contact{min-height:90svh;padding:100px 0}.contact h2{font-size:49px}.contact p{font-size:17px}.contact-email{font-size:35px}.site-footer{font-size:11px;padding-bottom:30px}.reflectt-extra{padding-block:90px}.reflectt-extra h2{font-size:46px}.reflectt-extra .wp-block-columns{gap:30px}.legacy-intro h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero.is-animated .intro-reveal{animation:none;opacity:1;transform:none}}
@media(forced-colors:active){.eyebrow,.text-link,.step-number,.service-index,.contact-email,.hero-tagline{color:LinkText}.hero-emblem svg{forced-color-adjust:none}}

.hero:focus-within .intro-reveal{animation:none;opacity:1;transform:none}

/* Match only the mobile opening R to the orange accent. Desktop keeps its original gradient. */
@media(max-width:680px){.hero-emblem .reflectt-orange-logo stop:nth-of-type(2){stop-color:#f06f08}.hero-emblem .reflectt-orange-logo stop:nth-of-type(3){stop-color:#e06807}}

/* Inline links added explicitly inside editable paragraphs. */
.reflectt-inline-link{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
