/* Warmer editorial finish: charcoal typography, tactile art and clearer scale. */
.full-site{--ink:#37342f;--muted:#635b53;--accent:#ac472e;--green:#526c57;--sage:#e4ebdd;--peach:#f3d2c2;--yellow:#e8bd55;--section:#f7eee3;--line:#e4d8ca;--canvas:#fcf8f1}
.full-site .ui-icon{width:24px;height:24px;flex:none;display:inline-block;vertical-align:middle}
.full-site .button .ui-icon,.full-site .text-link .ui-icon{width:20px;height:20px}
.full-site .brand-name{font-size:28px}.full-site .brand-subtitle{font-size:12px;letter-spacing:0;line-height:1.55;margin-top:7px}
.full-site .full-header{padding-block:22px;background:color-mix(in srgb,var(--canvas) 96%,transparent)}
.full-site .full-header .main-nav{font-size:14px;gap:26px}.full-site .header-contact{font-size:14px;padding:12px 22px}
.full-site .eyebrow{font-size:12px;line-height:1.7;letter-spacing:.095em}
.full-site .hero{padding-top:54px;overflow:hidden}.full-site .hero>.eyebrow span{font-size:12px;letter-spacing:.07em;margin-top:5px}
.full-site .hero h1{font-size:clamp(48px,4.9vw,70px);letter-spacing:-.055em;max-width:1020px;margin-top:28px;margin-bottom:28px;line-height:1.12;position:relative;z-index:1}
.hero-art{position:absolute;width:142px;height:215px;object-fit:contain;right:16px;top:155px;transform:rotate(9deg);z-index:-1}
.full-site .hero:before{content:'';position:absolute;width:210px;height:230px;border-radius:49% 51% 65% 35%;background:#f4d8c7;top:180px;left:-130px;transform:rotate(-22deg);z-index:-1;opacity:.65}
.hero-values{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 27px;position:relative;z-index:1}
.hero-values>span{display:flex;align-items:center;gap:8px;padding:7px 15px;background:var(--sage);color:#3e5842;border-radius:40px;font-size:14px;line-height:1.5}
.hero-values>span:nth-child(2){background:#f7e0d3;color:#8e482e}.hero-values>span:nth-child(3){background:#f6e6b7;color:#765716}.hero-values .ui-icon{width:21px;height:21px}
.full-site .hero-copy{font-size:18px;line-height:1.75;max-width:750px}.full-site .hero-actions{margin-top:30px;gap:30px}
.full-site .button{font-size:15px;padding:15px 25px;gap:24px;font-weight:500;box-shadow:0 5px 15px #ac472e12}
.full-site .text-link{font-size:15px;line-height:1.55}.full-site .availability{font-size:13px;line-height:1.7;gap:9px}
.full-site .hero .availability{margin-top:20px;margin-bottom:36px}.full-site .availability>span{background:var(--green);width:7px;height:7px}
.full-site .practice-strip{border:0;padding:0 0 39px;gap:20px}.full-site .practice-strip p{background:#fffdf9;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 22px #55423205;justify-content:flex-start;text-align:left;gap:15px;padding:22px;font-size:15px;font-weight:500;line-height:1.55;letter-spacing:-.01em}
.full-site .strip-mark{width:44px;height:44px;flex:none;color:var(--accent);border-radius:14px}.full-site .mark-green{color:var(--green)}.full-site .mark-yellow{color:#82651c}.full-site .strip-mark .ui-icon{width:25px;height:25px}
.full-site .intro{background:#faf1e6;padding-block:74px}.full-site .intro-grid{gap:78px}.full-site .intro-copy>p:not(.eyebrow){font-size:17px;line-height:1.8}.full-site .intro-note{padding:23px 0;margin-block:26px}.full-site .intro-note p{font-size:15px;line-height:1.8;color:var(--muted)}
.full-site .portrait-composition img{height:435px;border-width:5px;box-shadow:0 14px 32px #5542320e}.full-site .portrait-name{font-size:26px}.full-site .portrait-composition figcaption>span:last-child{font-size:13px;line-height:1.7;margin-top:5px}.full-site .shape-yellow{background:#edc974}.full-site .shape-peach{background:#f1c6b4}.full-site .portrait-waves{display:none}
.full-site .section{padding-block:72px}.full-site .section p,.full-site .page-lead{font-size:17px;line-height:1.8}.full-site .section-heading>p{font-size:17px}
.full-site .offer-card{background:#fffdf9;border-radius:22px;border-color:var(--line);padding:28px;box-shadow:0 8px 28px #55423206;transition:transform .2s,border-color .2s}
.full-site .offer-card:hover{transform:translateY(-3px);border-color:#c9b8a4}.full-site .offer-card h3{font-size:24px;line-height:1.3}.full-site .offer-card p{font-size:16px;line-height:1.8}
.full-site .card-number{width:48px;height:48px;border-radius:15px;font-size:14px;color:var(--accent)}.full-site .offer-card:nth-child(2) .card-number{color:var(--green)}.full-site .offer-card:nth-child(3) .card-number{color:#82651c}.full-site .card-number .ui-icon{width:29px;height:29px}
.full-site .topics-grid li{font-size:19px;padding-block:22px}.full-site .topic-dot{width:8px;height:8px}.full-site .section-bottom p{font-size:15px;line-height:1.8}
.full-site .section-tint{background:#f7f0e6}.full-site .motif-panel{background:#f1e9dc;border-radius:180px 180px 25px 25px;min-height:430px;border:1px solid #e6d9c7;padding:20px;position:relative}
.section-art{width:100%;max-width:300px;height:390px;object-fit:contain;display:block}.with-motif .section-art{height:260px;width:175px;justify-self:center;transform:rotate(8deg)}.with-motif .art-small{height:235px;transform:rotate(-8deg)}
.full-site .step-number{font-size:52px}.full-site .step-card h3{font-size:24px;line-height:1.3}.full-site .step-card p{font-size:16px;line-height:1.8}
.full-site .closing-cta{background:#e9d8c4;color:var(--ink);position:relative;overflow:hidden;padding-block:66px}.full-site .closing-cta:after{content:'';position:absolute;width:230px;height:230px;border-radius:50%;border:45px solid #d4b79740;right:-85px;bottom:-95px;pointer-events:none}.full-site .closing-cta .eyebrow{color:var(--accent)}.full-site .closing-cta p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.8}.full-site .closing-cta h2{font-size:38px;line-height:1.2;max-width:710px}.full-site .closing-cta .button{background:var(--accent);color:#fff;position:relative;z-index:1}.full-site .closing-cta .button:hover{background:#883823}
.full-site .page-heading .page-lead{font-size:18px;line-height:1.8}.full-site .article-label .eyebrow{font-size:12px}.full-site .article-copy p{font-size:17px;line-height:1.85}.full-site .article-copy h2{font-size:34px}.full-site .article-section{padding-block:43px}
.full-site .about-heading p:not(.eyebrow){font-size:17px;line-height:1.8}.full-site .about-heading .qualification{font-size:14px!important;line-height:1.7}.full-site .qualification-list li{font-size:16px;line-height:1.8}.full-site .about-heading .portrait-composition img{height:490px}
.full-site .funding-card p{font-size:16px;line-height:1.8}.full-site .funding-card{border-radius:22px;background:#fffdf9}.full-site .funding-card h3{font-size:24px}.full-site .faq-list summary{font-size:16px;line-height:1.6;padding-block:23px}.full-site .faq-answer p{font-size:16px;line-height:1.8}.full-site .faq-layout>div:first-child>p:not(.eyebrow){font-size:16px}
.full-site .contact-primary>p:not(.eyebrow){font-size:16px;line-height:1.8}.full-site .contact-primary .contact-languages{font-size:14px!important}.full-site .contact-details p{font-size:16px;line-height:1.8}.full-site .crisis-panel p{font-size:15px;line-height:1.8}.full-site .source-link{font-size:14px}
.full-site .site-footer{background:#f7f0e6}.full-site .footer-grid p:not(.eyebrow){font-size:14px;line-height:1.75}.full-site .footer-grid address{font-size:15px}.full-site .footer-grid>div>a:not(.brand),.full-site .footer-grid>nav{font-size:14px}.full-site .footer-bottom{font-size:13px}.full-site .draft-ribbon{font-size:12px}.full-site .legal-draft p{font-size:17px;line-height:1.8}
@media(max-width:1150px){.hero-art{display:none}.full-site .full-header .main-nav{gap:18px}.full-site .intro-grid{gap:42px}.full-site .practice-strip p{padding:20px 17px;font-size:14px}.full-site .with-motif{gap:40px}.full-site .section-bottom{gap:22px}.full-site .footer-grid{gap:40px}}
@media(max-width:760px){.full-site .full-header{padding:17px 20px;gap:12px}.full-site .brand-name{font-size:21px}.full-site .brand-subtitle{font-size:10px;max-width:190px;margin-top:4px;line-height:1.4}.full-site .header-contact{font-size:13px;padding:10px 15px}.full-site .full-header .main-nav{gap:0}.full-site .full-header .main-nav a{font-size:16px;padding-block:13px!important}.full-site .hero{padding-top:39px;padding-inline:24px}.full-site .hero>.eyebrow{font-size:11px;max-width:340px;line-height:1.65;letter-spacing:.06em}.full-site .hero>.eyebrow span{font-size:11px;letter-spacing:.05em}.full-site .hero h1{font-size:44px;line-height:1.12;margin:26px auto}.full-site .hero:before{display:none}.hero-values{gap:7px;margin-bottom:25px}.hero-values>span{font-size:12px;padding:6px 10px;gap:6px}.hero-values .ui-icon{width:18px;height:18px}.full-site .hero-copy{font-size:16px;line-height:1.8}.full-site .hero-actions{gap:15px;margin-top:25px}.full-site .button{font-size:15px;padding:14px 24px}.full-site .text-link{font-size:14px}.full-site .availability{font-size:13px}.full-site .hero .availability{margin:20px 0 28px}.full-site .practice-strip{padding-bottom:30px;gap:12px}.full-site .practice-strip p{width:100%;max-width:none;padding:16px 18px;gap:13px;font-size:14px;border-radius:16px}.full-site .strip-mark{width:38px;height:38px}.full-site .strip-mark .ui-icon{width:23px;height:23px}.full-site .intro{padding:50px 24px}.full-site .intro-grid{gap:40px}.full-site .eyebrow{font-size:11px}.full-site .intro h2{font-size:35px;line-height:1.14}.full-site .intro-copy>p:not(.eyebrow){font-size:16px;line-height:1.8}.full-site .intro-note p{font-size:15px}.full-site .portrait-composition img{height:390px}.full-site .portrait-name{font-size:26px}.full-site .portrait-composition figcaption>span:last-child{font-size:12px}.full-site .section{padding-block:50px}.full-site .section p,.full-site .section-heading>p{font-size:16px;line-height:1.8}.full-site .offer-card{padding:25px}.full-site .offer-card h3{font-size:23px}.full-site .offer-card p{font-size:16px}.full-site .topics-grid li{font-size:18px;line-height:1.5;padding-block:19px}.full-site .section-bottom p{font-size:15px}.full-site .motif-panel{min-height:355px;max-width:320px;padding:15px}.section-art{height:325px;max-width:250px}.with-motif .section-art{display:none}.full-site .step-number{font-size:46px}.full-site .step-card h3{font-size:23px}.full-site .step-card p{font-size:16px}.full-site .closing-cta{padding-block:47px}.full-site .closing-cta h2{font-size:32px}.full-site .closing-cta p:not(.eyebrow){font-size:16px}.full-site .page-heading .page-lead{font-size:16px}.full-site .article-label .eyebrow{font-size:11px}.full-site .article-copy h2{font-size:29px;line-height:1.2}.full-site .article-copy p{font-size:16px;line-height:1.8}.full-site .article-section{padding-block:30px}.full-site .about-heading p:not(.eyebrow){font-size:16px}.full-site .about-heading .qualification{font-size:13px!important}.full-site .qualification-list li{font-size:16px}.full-site .about-heading .portrait-composition img{height:410px}.full-site .funding-card h3{font-size:23px}.full-site .funding-card p,.full-site .funding-intro p{font-size:16px}.full-site .faq-list summary{font-size:16px}.full-site .faq-answer p{font-size:16px}.full-site .contact-primary>p:not(.eyebrow),.full-site .contact-details p{font-size:16px}.full-site .crisis-panel p{font-size:15px}.full-site .footer-grid .brand-name{font-size:26px}.full-site .footer-grid .brand-subtitle{font-size:12px;max-width:none}.full-site .footer-grid .eyebrow{font-size:11px}.full-site .footer-grid p:not(.eyebrow){font-size:14px}.full-site .footer-bottom{font-size:12px}.full-site .draft-ribbon{font-size:11px}}
@media(max-width:360px){.full-site .full-header{padding-inline:16px;gap:8px}.full-site .brand-name{font-size:19px}.full-site .brand-subtitle{font-size:9px}.full-site .header-contact{font-size:12px;padding:9px 11px}.full-site .hero h1{font-size:40px}.hero-values>span{font-size:11px;padding-inline:8px}.full-site .practice-strip p{font-size:13px}}
@media(max-width:760px){.full-site .portrait-composition .shape-peach{right:20px}}

/* Distinct illustrations and a practical contact page. */
.hero-art{width:180px;height:150px;right:0;top:190px;transform:rotate(8deg)}
.with-motif .section-art.art-perspectives{width:270px;height:220px;max-width:300px;transform:rotate(3deg)}
.with-motif .section-art.art-steps{width:285px;height:190px;max-width:300px;transform:none}
.full-site .with-motif{grid-template-columns:minmax(0,1fr) 270px;gap:45px}
.contact-with-form{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);gap:65px}
.full-site .contact-form-card{background:#fffdf9;padding:34px}.full-site .contact-form-card h2{margin-bottom:15px}.full-site .contact-form-card .form-intro{font-size:15px;line-height:1.7;margin-bottom:25px}
#contact-form{margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row>div,.form-field{min-width:0}.form-field{margin-top:21px}
#contact-form label{font-size:14px;font-weight:500;display:block;margin-bottom:8px;color:var(--ink)}#contact-form label>span{font-weight:400;color:var(--muted)}
#contact-form input:not([type=checkbox]),#contact-form select,#contact-form textarea{display:block;width:100%;padding:12px 14px;font:15px/1.6 var(--body);color:var(--ink);background:#fcf8f1;border:1px solid #ddcfbf;border-radius:10px;box-shadow:none}
#contact-form textarea{resize:vertical;min-height:140px}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#7c7165;font-size:14px}
#contact-form input:focus-visible,#contact-form select:focus-visible,#contact-form textarea:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:3px}
#contact-form #message-hint{font-size:13px;line-height:1.75;color:var(--muted);margin:10px 0 18px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#contact-form .form-privacy{font-size:13px;line-height:1.7;margin:20px 0 0}.form-privacy a,.privacy-check a{text-decoration:underline;text-underline-offset:3px}
#contact-form .privacy-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:400;margin-top:22px}#contact-form .privacy-check input{accent-color:var(--accent);margin-top:5px;flex:none}
.full-site #contact-form .required-note{font-size:12px;color:var(--muted);margin:15px 0 17px}#contact-form button{border:0;cursor:pointer}#contact-form button:disabled{opacity:.65;cursor:wait}
.full-site #form-status{font-size:14px;line-height:1.7;margin:18px 0 0}#form-status:empty{margin:0!important}.draft-email-button{background:var(--sage);color:var(--ink);margin-top:16px}.draft-email-button:hover{background:#d2dec9}
.contact-direct-email{display:inline-block;overflow-wrap:anywhere;font-size:23px;line-height:1.5;letter-spacing:-.025em;margin:13px 0 12px}.contact-details .availability{justify-content:flex-start;margin:12px 0 16px}.contact-details>div:first-child{padding-top:5px}
.visit-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center}.full-site .visit-layout h2{font-size:34px;max-width:400px}.visit-layout address{font-size:23px;line-height:1.6;font-style:normal;margin-bottom:18px}.full-site .visit-layout>div>p:not(.eyebrow){font-size:16px;line-height:1.8}
@media(max-width:1150px){.full-site .with-motif{grid-template-columns:minmax(0,1fr) 210px;gap:30px}.with-motif .section-art.art-perspectives,.with-motif .section-art.art-steps{width:210px}.contact-with-form{gap:40px}.visit-layout{gap:40px}}
@media(max-width:760px){.full-site .with-motif{grid-template-columns:1fr;gap:10px}.contact-with-form{grid-template-columns:1fr;gap:33px}.full-site .contact-form-card{padding:26px 22px}.form-row{grid-template-columns:1fr;gap:20px}#contact-form input:not([type=checkbox]),#contact-form select,#contact-form textarea{font-size:16px}.contact-direct-email{font-size:22px}.visit-layout{grid-template-columns:1fr;gap:28px}.full-site .visit-layout h2{font-size:31px}.visit-layout address{font-size:22px}}

.visit-layout{grid-template-columns:minmax(0,1fr) 340px;gap:60px;max-width:1000px}
.building-photo{width:100%;max-width:340px;margin:0;justify-self:end;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f2ebdf}
.building-image-frame{height:215px;overflow:hidden}
.building-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 70%;transform:scale(1.5);transform-origin:55% 70%}
.building-photo figcaption{padding:10px 14px;font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:760px){.visit-layout{grid-template-columns:1fr;gap:24px}.building-photo{max-width:320px;justify-self:start}.building-image-frame{height:190px}}

/* Clearer information hierarchy, fewer containers and quieter decoration. */
.full-site{--heading-tracking:-.03em}
.full-site h1,.full-site h2,.full-site h3,.full-site .brand-name{letter-spacing:-.03em}
.full-site h1,.full-site h2,.full-site h3{overflow-wrap:break-word}
.full-site .full-header{background:var(--canvas)}
.full-site .hero{padding-top:52px}
.full-site .hero h1{font-size:clamp(44px,5vw,68px);letter-spacing:-.03em;max-width:850px;margin:0 auto 22px}
.full-site .hero:before{display:block;top:100px;left:-125px;opacity:.65}
.hero-art{right:35px;top:60px;width:145px;height:145px}
.full-site .hero-copy{max-width:520px;font-size:19px;line-height:1.6}
.full-site .hero-actions{margin-top:26px}
.full-site .button{box-shadow:none;transition:background .2s}
.full-site .button:hover{transform:none}
.full-site .hero .availability{margin:18px 0 30px}
.full-site .practice-strip{display:flex;justify-content:center;gap:30px;padding:20px 0 24px;border-top:1px solid var(--line)}
.full-site .practice-strip p{display:block;padding:0;border:0;border-radius:0;background:none;box-shadow:none;font-size:14px;font-weight:400;color:var(--muted)}
.full-site .intro{padding-block:56px}
.full-site .intro-grid{grid-template-columns:330px minmax(0,1fr);gap:90px}
.full-site .intro h2{margin:0 0 20px;font-size:40px}
.full-site .intro-copy>p{max-width:55ch}
.full-site .intro-copy .text-link{margin-top:20px}
.full-site .portrait-composition img{height:335px;box-shadow:none}
.full-site .portrait-composition .shape-yellow{width:215px;height:205px;top:-27px;left:-15px;opacity:.8;transform:rotate(-18deg)}
.full-site .portrait-composition .shape-peach{width:220px;height:235px;bottom:-28px;right:-22px;transform:rotate(24deg)}
.full-site .portrait-waves{display:block;top:35px;right:-27px;width:112px;height:165px;color:var(--green);opacity:.95;pointer-events:none}
.full-site .portrait-composition img{border-color:#fffdf9}
.full-site .intro{position:relative;isolation:isolate;overflow:hidden}
.full-site .intro:after{content:'';position:absolute;z-index:-1;pointer-events:none;width:190px;height:270px;right:-65px;top:75px;background:#edc97430;border-radius:140px 0 0 140px;transform:rotate(-12deg)}
.full-site .section-heading{grid-template-columns:1.1fr 1fr;gap:60px}
.full-site .section-heading h2{margin:0;font-size:36px}
.full-site .section-heading:has(>h2:only-child){display:block}
.full-site .topics-grid li{font-family:var(--body);letter-spacing:0;font-size:17px;padding-block:17px}
.full-site .topic-dot{width:7px;height:7px;background:var(--accent)}
.full-site .topics-grid li:nth-child(3n+2) .topic-dot{background:var(--green)}
.full-site .topics-grid li:nth-child(3n) .topic-dot{background:#b68a2d}
.full-site .split-feature{grid-template-columns:330px minmax(0,1fr);gap:90px}
.full-site .motif-panel{background:#e4ebdd;border:0;border-radius:160px 160px 24px 24px;padding:20px;min-height:325px}
.full-site .motif-panel .section-art{height:285px;max-width:230px}
.full-site .split-feature h2{margin-top:0}
.full-site .page-heading h1{margin-top:0;margin-bottom:20px;font-size:clamp(40px,4.3vw,58px)}
.full-site .article-section{grid-template-columns:270px minmax(0,1fr);gap:60px}
.full-site .article-section>h2{margin:0;font-size:26px;line-height:1.3}
.full-site .article-copy p{max-width:65ch;line-height:1.75}
.full-site .about-heading h1{margin-top:0}
.full-site .about-heading .portrait-composition img{height:430px}
.full-site .funding-grid{display:block;margin-top:30px}
.full-site .funding-card{display:grid;grid-template-columns:270px minmax(0,1fr);gap:60px;background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:26px 0}
.full-site .funding-card h3{margin:0;font-size:24px;overflow-wrap:normal}
.full-site .funding-card p{max-width:65ch}
.full-site .closing-cta{background:#f0e5d6;padding-block:45px}
.full-site .closing-cta:after{display:block}
.full-site .closing-cta h2{font-size:32px;margin:0 0 12px}
.full-site .closing-cta p{max-width:55ch}
.full-site .faq-layout h2,.full-site .narrow-section h2{margin-top:0}
.full-site .contact-form-card{border-radius:12px;background:transparent;border:1px solid var(--line);padding:28px}
.full-site .contact-form-card h2{margin-top:0;font-size:28px}
.full-site .crisis-panel{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding-block:26px}
.full-site .crisis-panel h2{margin-top:0}
.full-site .footer-grid nav a{min-height:32px;display:inline-flex;align-items:center}
.full-site textarea{caret-color:var(--accent)}
.full-site textarea:focus-visible,.full-site input:focus-visible,.full-site select:focus-visible{outline:2px solid var(--accent)!important;outline-offset:3px}
.full-site :is(a,button,input,select,textarea,summary){touch-action:manipulation}
.full-site .inline-link{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.full-site .inline-link:hover{color:var(--accent)}
.full-site :is(h1,h2,h3,section,main){scroll-margin-top:125px}
html{scroll-padding-top:125px}
.full-site .intro-copy>p+p{margin-top:16px}
.home-start{background:#f0e5d6;position:relative;isolation:isolate;overflow:hidden}
.start-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:24px}
.full-site .home-start .funding-note{font-size:15px;line-height:1.75;max-width:60ch}
.wave-ribbon{position:absolute;right:-35px;bottom:16px;width:205px;height:48px;color:var(--green);opacity:.55;transform:rotate(-6deg);pointer-events:none;z-index:-1}
.wave-ribbon path:nth-child(2){stroke:var(--accent)}
.full-site .closing-cta{isolation:isolate}
.full-site .closing-cta:after{display:none}
.working-heading{display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:60px;margin-bottom:32px}
.working-heading h2{margin-top:0}
.working-heading p{max-width:65ch;margin-bottom:0}
.working-heading .section-art{height:170px;width:240px;transform:rotate(3deg)}
.working-heading+.article-layout{padding-bottom:0}
@media(max-width:1100px){
  .full-site .intro-grid,.full-site .split-feature{grid-template-columns:280px minmax(0,1fr);gap:45px}
  .full-site .article-section,.full-site .funding-card{grid-template-columns:220px minmax(0,1fr);gap:40px}
}


@media(max-width:760px){
  .full-site .hero{padding-top:35px}
  .full-site .hero h1{font-size:clamp(36px,9vw,44px);line-height:1.15;margin-bottom:18px}
  .full-site .hero:before{display:none}
  .hero-art{display:block;position:static;width:70px;height:55px;margin:0 auto 16px;transform:none}
  .full-site .hero-copy{font-size:17px;max-width:30ch}
  .full-site .hero-actions{gap:10px}
  .full-site .hero .availability{margin-bottom:22px}
  .full-site .practice-strip{flex-direction:column;gap:6px;padding-block:16px}
  .full-site .practice-strip p{font-size:13px;text-align:center;max-width:none}
  .full-site .intro-grid,.full-site .split-feature{grid-template-columns:1fr;gap:32px}
  .full-site .intro h2{font-size:32px}
  .full-site .portrait-composition{max-width:280px;padding-inline:15px}
  .full-site .portrait-composition img{height:290px}
  .full-site .portrait-composition .shape-yellow{width:180px;height:170px;left:-7px}
  .full-site .portrait-composition .shape-peach{width:180px;height:190px;right:-8px;bottom:-22px}
  .full-site .portrait-waves{width:85px;height:130px;right:-18px;top:27px}
  .full-site .intro:after{width:140px;height:185px;right:-80px;top:30px}
  .full-site .section-heading{grid-template-columns:1fr;gap:16px}
  .full-site .section-heading h2{font-size:30px}
  .full-site .motif-panel .section-art{height:210px;max-width:180px}
  .full-site .motif-panel{min-height:245px;max-width:280px}
  .full-site .article-section,.full-site .funding-card{grid-template-columns:1fr;gap:15px}
  .full-site .article-section>h2{font-size:25px}
  .full-site .closing-cta h2{font-size:29px}
  .full-site .contact-form-card{padding:23px 20px}
  .contact-with-form .contact-details{grid-row:1}
  .contact-with-form .contact-details>div:last-child{padding-bottom:0;border-bottom:0}
  .full-site .footer-grid nav a{min-height:44px}
  .full-site .menu-toggle{width:44px;height:44px}
  .full-site .text-link{min-height:44px}
  .full-site .brand-name{font-size:20px}
  .full-site .header-contact{padding:12px 14px;min-height:44px}
  .start-actions{align-items:flex-start;flex-direction:column;gap:12px}
  .working-heading{grid-template-columns:1fr;gap:20px;margin-bottom:24px}
  .working-heading .section-art{height:115px;width:180px;justify-self:end}
  .wave-ribbon{width:135px;height:32px;right:-25px;bottom:8px;opacity:.4}
}

/* One paper opening in the hero; small, consistent feedback elsewhere. */
.full-site{--ease-arrive:cubic-bezier(.16,1,.3,1)}
.full-site .hero{max-width:1200px;padding:55px 48px 0;text-align:left}
.full-site .hero:before{display:none}
.hero-stage{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:45px;align-items:center;padding-bottom:34px}
.hero-content{min-width:0}
.full-site .hero h1{font-size:clamp(48px,4.9vw,66px);line-height:1.08;margin:0 0 30px;max-width:650px;text-align:left}
.full-site .hero h1 em{display:inline-block;position:relative;padding-bottom:13px}
.hero-underline{position:absolute;left:2px;bottom:-2px;width:100%;height:20px;color:var(--accent);opacity:.65}
.full-site .hero-copy{font-size:18px;max-width:38ch;margin:0}
.full-site .hero-actions{justify-content:flex-start;gap:24px;margin-top:27px;flex-wrap:wrap}
.full-site .hero .availability{justify-content:flex-start;margin:18px 0 0}
.hero-collage{position:relative;isolation:isolate;min-height:340px;display:grid;place-items:center;perspective:900px}
.hero-collage .hero-art{display:block;position:relative;inset:auto;width:90%;height:auto;max-width:360px;z-index:1;transform:rotate(0deg);transform-origin:50% 90%;transition:transform 450ms var(--ease-arrive);pointer-events:none}
.full-site .hero .practice-strip{justify-content:flex-start;gap:40px;padding:19px 0 23px}
.full-site .button .ui-icon,.full-site .text-link .ui-icon{transition:transform 180ms var(--ease-arrive)}
.full-site :is(.button,.text-link):is(:hover,:focus-visible) .ui-icon{transform:translate(2px,-2px)}
.full-site .button:active{transform:scale(.985)}
.portrait-waves path{transition:transform 350ms var(--ease-arrive)}
.portrait-composition:hover .portrait-waves path,.intro:focus-within .portrait-waves path,.about-heading:focus-within .portrait-waves path{transform:translateY(3px)}
.wave-ribbon{transition:transform 400ms var(--ease-arrive)}
:is(.home-start,.closing-cta):focus-within .wave-ribbon{transform:translateX(-8px) rotate(-6deg)}
.faq-icon:after{transition:transform 180ms var(--ease-arrive)}
@media(prefers-reduced-motion:no-preference){
  .hero-collage .hero-art{animation:paper-opening 780ms var(--ease-arrive) backwards}
  .full-header .main-nav.is-open{animation:menu-opening 180ms var(--ease-arrive)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .hero-collage:hover .hero-art,.hero:focus-within .hero-art{transform:rotate(2deg)}
  :is(.home-start,.closing-cta):hover .wave-ribbon{transform:translateX(-8px) rotate(-6deg)}
}
@keyframes paper-opening{from{transform:rotateY(-12deg) rotate(-6deg) translateY(14px)}to{transform:rotateY(0) rotate(0deg) translateY(0)}}
@keyframes menu-opening{from{transform:translateY(-4px)}to{transform:translateY(0)}}
@media(max-width:1100px){
  .hero-stage{gap:25px;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr)}
  .full-site .hero h1{font-size:clamp(44px,5.4vw,58px)}
  .hero-collage{min-height:285px}
}
@media(max-width:760px){
  .full-site .hero{padding:30px 24px 0}
  .hero-stage{grid-template-columns:1fr;gap:24px;padding-bottom:25px}
  .full-site .hero h1{font-size:clamp(37px,9.7vw,49px);line-height:1.12;margin-bottom:23px;max-width:540px}
  .full-site .hero h1 em{padding-bottom:9px}
  .hero-underline{height:15px}
  .full-site .hero-copy{font-size:17px;max-width:33ch}
  .full-site .hero-actions{flex-direction:row;align-items:center;gap:15px;margin-top:22px}
  .full-site .hero .availability{margin:15px 0 0}
  .hero-collage{min-height:140px;max-width:230px;width:65%;justify-self:end;margin-top:-4px}
  .hero-collage .hero-art{max-width:220px}
  .full-site .hero .practice-strip{flex-direction:column;align-items:flex-start;gap:6px;padding:16px 0 20px}
  .full-site .hero .practice-strip p{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  .hero-collage .hero-art,.full-header .main-nav.is-open{animation:none!important}
  .hero-collage .hero-art,.portrait-waves path,.wave-ribbon,.full-site .ui-icon{transition:none!important}
  .portrait-waves path,.full-site :is(.button,.text-link):is(:hover,:focus-visible) .ui-icon{transform:none}
  .full-site .button:active{transform:none}
}

/* Abstract marks share the collage's waves, arches and interlocking geometry. */
.full-site .topics-grid li{gap:16px;align-items:center}
.topic-symbol{display:block;width:28px;height:28px;flex:0 0 28px;color:var(--accent)}
.topics-grid li:nth-child(3n+2) .topic-symbol{color:var(--green)}
.topics-grid li:nth-child(3n) .topic-symbol{color:#a77a25}
.topics-grid li>span{min-width:0}
@media(max-width:760px){.full-site .topics-grid li{gap:14px}.topic-symbol{width:26px;height:26px;flex-basis:26px}}

/* Header and content share the same edges at every breakpoint. */
.full-site{--content-width:1100px;--page-gutter:48px}
.full-site .full-header{padding-inline:max(var(--page-gutter),calc((100% - var(--content-width))/2))}
.full-site .container,.full-site .hero,.full-site .intro-grid{width:min(var(--content-width),calc(100% - 2 * var(--page-gutter)));margin-inline:auto}
.full-site .hero{max-width:none;padding-inline:0}
.full-site .intro{padding-inline:0}
.full-site .intro-grid{max-width:var(--content-width)}
@media(max-width:760px){
  .full-site{--page-gutter:24px}
  .full-site .full-header{padding-inline:var(--page-gutter)}
  .full-site .full-header .main-nav{padding-inline:var(--page-gutter)}
  .full-site .hero,.full-site .intro{padding-inline:0}
}
@media(max-width:360px){.full-site{--page-gutter:20px}}

/* Practical facts grouped beneath the welcoming hero copy. */
.full-site .hero .practice-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-block:21px 25px}
.full-site .hero .practice-strip p{display:flex;align-items:center;gap:10px;line-height:1.6;min-width:0}
.full-site .practice-strip .ui-icon{width:22px;height:22px;color:var(--accent)}
.full-site .practice-strip p:nth-child(2) .ui-icon{color:var(--green)}
.full-site .practice-strip p:nth-child(3) .ui-icon{color:#a77a25}
@media(max-width:760px){.full-site .hero .practice-strip{grid-template-columns:1fr;gap:12px;padding-block:19px 23px}.full-site .hero .practice-strip p{font-size:14px}}

/* Inner pages: clear ideas, a warmer rhythm and meaningful colored markers. */
.feature-heading{display:flex;align-items:center;gap:16px;min-width:0}
.feature-mark{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;color:var(--accent);background:var(--peach);border-radius:50% 50% 42% 58%}
.feature-symbol{width:29px;height:29px;display:block}
.full-site .feature-heading :is(h2,h3){margin:0;font-size:25px;line-height:1.25;min-width:0}
.principles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 60px}
.principle{border-top:1px solid var(--line);padding:27px 0 24px;min-width:0}
.full-site .principle p{font-size:16px;line-height:1.75;margin:18px 0 0;max-width:52ch}
.principle:nth-child(2) .feature-mark,.credentials-grid>div:nth-child(2) .feature-mark,.process-step:nth-child(3) .feature-mark{background:var(--sage);color:var(--green);border-radius:50% 35% 50% 40%}
.principle:nth-child(3) .feature-mark,.process-step:nth-child(2) .feature-mark{background:#f2e5bf;color:#826019;border-radius:50% 50% 25% 25%}
.principle:nth-child(4) .feature-mark{background:var(--sage);color:var(--green)}
.page-about .about-heading h1{color:var(--accent)}
.page-about .working-heading h2{color:var(--accent)}
.full-site .credentials-grid .feature-heading{margin-bottom:22px}
.full-site .credentials-grid .qualification-list li{font-size:16px}
.inner-jumps{display:flex;gap:25px;flex-wrap:wrap;margin-top:22px}
.page-cost .page-heading h1 em{color:var(--accent);font-style:normal}
.page-cost .page-heading{padding-block:55px 30px}
.full-site .process-section{padding-top:20px}
.full-site .process-section h2{color:var(--accent);margin-top:0}
.process-list{list-style:none;padding:0;margin:0}
.process-step{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start;border-top:1px solid var(--line);padding:27px 0}
.process-copy{min-width:0}
.full-site .process-copy p{font-size:16px;line-height:1.75;margin:0 0 13px;max-width:65ch}
.full-site .process-copy p:last-child{margin-bottom:0}
.funding-choices{margin-top:30px}
.funding-choice{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start;border-top:1px solid var(--line);padding:27px 0;min-width:0}
.full-site .funding-choice p{font-size:16px;line-height:1.75;margin:0;max-width:65ch}
.funding-choice:nth-child(2) .feature-mark{background:#f2e5bf;color:#826019}
.funding-choice:nth-child(3) .feature-mark{background:var(--sage);color:var(--green)}
.page-cost #fragen h2{margin-top:0}
.hero-collage .hero-dialogue{width:100%;max-width:470px;aspect-ratio:1.2;isolation:isolate}
.hero-dialogue img{position:absolute;height:auto;pointer-events:none}
.dialogue-paper{width:70%;left:24%;top:-4%;z-index:0}
.dialogue-left{width:62%;left:-5%;top:10%;z-index:2}
.dialogue-right{width:60%;right:-6%;top:19%;z-index:2}
.dialogue-sun{width:24%;left:57%;top:-1%;z-index:3}
.dialogue-line-top{width:43%;left:4%;top:8%;z-index:3}
.dialogue-line-bottom{width:37%;right:6%;bottom:0;z-index:3}
.hero-collage .hero-journey{width:100%;max-width:470px;aspect-ratio:1.6;isolation:isolate}
.journey-scene{display:block;width:100%;height:auto;overflow:visible}
.journey-scene [data-depth]{transform:translate3d(calc(var(--motion-x,0px) * var(--depth)),calc(var(--motion-y,0px) * var(--depth)),0);transform-box:fill-box;transform-origin:center}
/* These comparison illustrations own the right half, like the supplied mockups. */
.page-home:has(.hero-preview) main{overflow-x:clip}
.full-site .hero-preview{overflow:visible}
.hero-preview .hero-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;padding-bottom:36px}
.hero-preview .hero-collage{width:100%;min-height:505px;justify-self:start;justify-items:start}
.hero-preview .hero-art{max-width:none;width:calc(100% + 130px);transform:none!important;animation:none!important;transition:none!important}
.hero-preview .hero-dialogue{width:calc(100% + 60px);aspect-ratio:1.2}
.hero-preview .hero-journey{width:calc(100% + 290px);left:-35px;aspect-ratio:800 / 540}
.hero-preview .dialogue-sun{width:18%;left:57%;top:-1%}
[data-parallax]>img,.journey-scene [data-depth]{transform:translate3d(calc(var(--motion-x,0px) * var(--depth)),calc(var(--motion-y,0px) * var(--depth)),0);transform-origin:center}
.hero-preview .journey-leaf{transform-origin:65% 90%;--arrival-angle:4deg}
.hero-review-nav .motion-toggle{font:inherit;color:var(--green);border:1px solid var(--green);border-radius:30px;background:transparent;padding:8px 15px;min-height:40px;cursor:pointer}
.hero-review-nav .motion-toggle:hover{background:var(--canvas)}
.hero-review-nav .motion-toggle:disabled{cursor:default}
@media(prefers-reduced-motion:no-preference){
  [data-parallax]>img,.journey-scene [data-depth]{animation:collage-arrive 600ms var(--ease-arrive) backwards}
}
@keyframes collage-arrive{from{scale:.99;rotate:0deg}to{scale:1;rotate:0deg}}
.motion-paused [data-parallax]>img,.motion-paused .journey-scene [data-depth]{animation:none!important;transform:none!important}
@media(prefers-reduced-motion:reduce){[data-parallax]>img,.journey-scene [data-depth]{animation:none!important;transform:none!important}}
@media(max-width:1000px){
  .hero-preview .hero-stage{grid-template-columns:1fr;gap:28px}
  .hero-preview .hero-collage{width:70%;max-width:570px;min-height:360px;justify-self:center}
  .hero-preview .hero-art,.hero-preview .hero-dialogue{width:100%}
  .hero-preview .hero-journey{width:125%;left:-10%}
}
.hero-review-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;padding:14px 24px;border-bottom:1px solid var(--line);background:var(--sage);font-size:14px}
.hero-review-nav a{padding:7px 0;min-height:32px}
.hero-review-nav [aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:6px}
@media(max-width:1100px){
  .process-step,.funding-choice{grid-template-columns:260px minmax(0,1fr);gap:30px}
  .principles-grid{gap:0 38px}
}
@media(max-width:760px){
  .principles-grid{grid-template-columns:1fr;gap:0}
  .hero-preview .hero-collage{width:100%;max-width:420px;min-height:300px;justify-self:center;margin-top:0}
  .hero-review-nav{gap:8px 18px;font-size:13px}
  .full-site .feature-heading :is(h2,h3){font-size:24px}
  .feature-mark{width:44px;height:44px;flex-basis:44px}
  .feature-symbol{width:27px;height:27px}
  .principle{padding-block:24px}
  .page-cost .page-heading{padding-top:38px;padding-bottom:25px}
  .page-cost .with-motif .section-art{display:block;width:190px;height:105px;justify-self:end;transform:rotate(-3deg);margin-top:8px}
  .inner-jumps{gap:15px;margin-top:18px}
  .process-step,.funding-choice{grid-template-columns:1fr;gap:17px;padding-block:24px}
  .full-site .process-section{padding-top:10px}
}

/* Real portraits and a view into the practice. */
.practice-visit .visit-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);max-width:1100px;gap:48px}
.practice-visit .building-photo{max-width:250px;margin-top:28px}
.practice-visit .building-image-frame{height:150px}
.practice-photo{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:20px}
.practice-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.full-site .about-heading .portrait-fullbody img{object-fit:cover;object-position:50% 50%;height:500px}
@media(max-width:760px){.practice-visit .visit-layout{grid-template-columns:1fr;gap:30px}.full-site .about-heading .portrait-fullbody img{height:410px}.practice-visit .building-photo{max-width:230px}}

/* Give the home illustration enough presence beside the headline. */
@media(min-width:761px){
  .hero:not(.hero-preview) .hero-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}
  .hero:not(.hero-preview) .hero-collage{min-height:400px}
  .hero:not(.hero-preview) .hero-collage .hero-art{width:115%;max-width:560px}
}
@media(max-width:760px){
  .hero:not(.hero-preview) .hero-collage{width:100%;max-width:360px;min-height:210px;justify-self:center;margin-top:0}
  .hero:not(.hero-preview) .hero-collage .hero-art{width:100%;max-width:360px}
}

/* Readable legal information and direct, data-minimising contact. */
.legal-content{max-width:820px;padding-bottom:72px;overflow-wrap:anywhere}
.legal-content section{margin-bottom:40px}
.full-site .legal-content h2{font-size:30px;line-height:1.2;margin:0 0 18px}
.full-site .legal-content h3{font-size:21px;line-height:1.4;margin:26px 0 12px}
.full-site .legal-content p,.legal-content address,.legal-content li{font-size:17px;line-height:1.8;color:var(--muted)}
.legal-content address{font-style:normal}
.legal-content ul{padding-left:22px;display:grid;gap:9px}
.legal-updated{border-top:1px solid var(--line);padding-top:22px;font-size:14px!important}
.direct-contact-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:start}
.direct-contact .contact-direct-email{display:inline-block;font-size:clamp(20px,2.3vw,29px);overflow-wrap:anywhere;margin-bottom:20px}
.full-site .direct-contact p{font-size:17px;line-height:1.8}
.direct-contact .contact-privacy{font-size:15px!important;margin-top:20px}
.direct-contact-layout .contact-details h2{font-size:27px;margin:0 0 20px}
.full-site :is(h1,h2,h3,[id]){scroll-margin-top:125px}
.full-site :is(a,button,summary):focus-visible{outline:3px solid var(--green);outline-offset:5px;border-radius:3px}
::selection{background:#efcf9b;color:#37342f}
@media(max-width:760px){
  .direct-contact-layout{grid-template-columns:1fr;gap:30px}
  .legal-content{padding-bottom:48px}
  .full-site .legal-content h2{font-size:27px}
  .full-site .legal-content p,.legal-content address,.legal-content li{font-size:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
