@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--cream:#f4f0e7;--navy:#172e3b;--orange:#ed641f;--line:#d5d3c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--navy);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,label:focus-within{outline:3px solid var(--orange);outline-offset:6px}header{height:108px;max-width:1400px;margin:auto;padding:0 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:italic 48px Georgia;letter-spacing:-5px;display:inline-flex;align-items:center;gap:13px}.brand span{color:var(--orange);font:32px Arial;letter-spacing:0}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover{color:var(--orange)}.contact-link{border:1px solid #9ca5a4;padding:12px 19px;border-radius:30px}.contact-link span{margin-left:20px}.menu{display:none}.hero{max-width:1400px;padding:80px 8% 0;margin:auto;display:grid;grid-template-columns:1fr 1.05fr;gap:8%;position:relative}.portrait-wrap{position:relative;max-width:450px;margin:0 15px}.portrait{position:relative;aspect-ratio:5/6;border-radius:48% 48% 3px 3px;overflow:hidden;background:#bb552f;transform:rotate(-3deg);transition:transform .6s}.portrait:hover{transform:rotate(0deg)}.portrait svg,.portrait img{width:100%;height:100%;object-fit:cover}.portrait img[hidden]{display:none}.upload{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:10px 15px;border-radius:25px;background:var(--cream);color:var(--navy);font-size:11px;cursor:pointer}.orbit{position:absolute;inset:-15px 10px 8px -15px;border:1px solid #c9b198;border-radius:48% 48% 2px 2px;transform:rotate(3deg)}.portrait-caption{display:block;font-size:9px;letter-spacing:2.5px;margin:25px 0 0 20px}.spark{position:absolute;right:-42px;top:26px;color:var(--orange);font-size:85px;animation:turn 30s linear infinite}.stamp{position:absolute;left:-36px;bottom:60px;background:var(--navy);color:var(--cream);border-radius:50%;width:105px;height:105px;display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:10px;line-height:1.5;letter-spacing:1px;transform:rotate(-12deg)}.stamp span{font-size:24px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.8}.hero-copy{padding-top:30px}.hero-copy .eyebrow{letter-spacing:1.5px;display:flex;align-items:center;gap:8px}.eyebrow>span{width:6px;height:6px;background:var(--orange);border-radius:50%}h1,h2,h3,p{margin-top:0}h1{font-family:Manrope,Arial,sans-serif;font-weight:500;font-size:clamp(65px,7.4vw,108px);line-height:1.07;letter-spacing:-6px;margin:27px 0}em{font-family:Georgia,serif;font-weight:400;color:var(--orange)}h1 em{font-size:1.07em}.intro{font-size:21px;line-height:1.55;margin:0 0 17px}.hero-small{font-size:13px;line-height:1.8;color:#657078}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;background:var(--navy);color:var(--cream);border:0;border-radius:30px;padding:17px 24px;font-size:12px;margin-top:19px}.button:hover{background:var(--orange)}.button span{font-size:18px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.6px;border-bottom:1px solid var(--line);padding:49px 0 24px;margin-top:5px}.draft-note{max-width:1176px;margin:18px auto 0;padding:0 20px;text-align:center;color:#77766e;font-size:10px}.section{max-width:1176px;margin:auto;padding:100px 35px;scroll-margin-top:10px}h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(37px,4.1vw,57px);font-weight:500;line-height:1.15;letter-spacing:-2px;margin-bottom:30px}h2 em{font-size:1.08em}.story{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:115px}.story-copy{padding-top:28px}.story-copy p{font-size:14px;line-height:1.9;color:#59676d}.story-copy .lead{font-size:22px;line-height:1.5;color:var(--navy)}.signature{font:italic 38px Georgia;color:var(--orange);display:block;margin-top:25px}.beliefs{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-top p{font-size:13px;line-height:1.7;color:#657078;padding-bottom:15px}.belief-list article{display:grid;grid-template-columns:45px 1fr 1fr 30px;gap:25px;padding:30px 0;border-top:1px solid var(--line);align-items:center}.belief-list span{color:var(--orange);font-size:12px}.belief-list h3{font-size:25px;font-weight:500;margin:0;letter-spacing:-.7px}.belief-list p{font-size:13px;line-height:1.8;margin:0;color:#59676d}.belief-list b{font-size:22px;font-weight:400}.interest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.interest{min-height:325px;padding:30px;overflow:hidden}.orange{background:#ed641f;color:var(--cream)}.navy{background:var(--navy);color:var(--cream)}.sand{background:#e6dece}.lines{font:110px Georgia;margin:0 0 20px;line-height:1.2}.interest:nth-child(2) .lines{color:#e9a26a}.interest>span{font-size:9px;letter-spacing:1.5px}.interest h3{font-size:24px;font-weight:500;margin:18px 0 10px}.interest p{font-size:13px;line-height:1.7;opacity:.8}.reflections{padding-top:30px}.small-label{font-size:9px;letter-spacing:1.5px;margin-bottom:35px}.reflection{display:grid;grid-template-columns:140px 1fr 110px;gap:20px;align-items:center;width:100%;padding:28px 0;text-align:left;color:var(--navy);background:none;border:0;border-top:1px solid var(--line)}.reflection:last-child{border-bottom:1px solid var(--line)}.reflection span{font-size:9px;letter-spacing:.8px}.reflection h3{font-size:21px;font-weight:400;margin:0}.reflection:hover h3{color:var(--orange)}.contact{background:var(--navy);color:var(--cream);max-width:none;padding:85px max(8%,calc((100vw - 1106px)/2))}.contact h2{font-size:clamp(40px,5.5vw,76px);position:relative}.contact h2 em{color:#ffab69}.contact h2>span{position:absolute;right:0;top:0;font-size:90px;color:#ffab69}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px}.contact-bottom p{font-size:13px;color:#c2cbcd;line-height:1.8}.contact .button{background:#ff9b54;color:var(--navy);margin:0}.contact-status{font-size:10px;color:#aab8bc;margin:22px 0 0}footer{max-width:1280px;padding:45px 35px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:12px;line-height:1.8;margin:0}footer p span{color:#788080}footer>a:not(.brand),footer>span{font-size:10px}dialog{background:var(--cream);color:var(--navy);border:0;max-width:650px;width:calc(100% - 32px);padding:65px 45px;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#102631aa;backdrop-filter:blur(5px)}dialog h2{font-size:38px}dialog>p:last-of-type{line-height:1.9;font-size:16px}.close{position:absolute;right:20px;top:12px;background:none;border:0;color:var(--navy);font-size:30px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;left:10px;z-index:10;background:white;padding:10px}@keyframes turn{to{transform:rotate(360deg)}}@media(min-width:1500px){.hero{padding-left:110px;padding-right:110px}}@media(max-width:900px){nav{gap:18px;font-size:11px}.hero{padding-top:60px;gap:6%}h1{letter-spacing:-4px}.hero-copy{padding-top:0}.hero-copy .eyebrow{font-size:8px}.intro{font-size:18px}.hero-small br{display:none}.stamp{width:85px;height:85px;font-size:8px;left:-24px}.section{padding:75px 30px}.contact{padding:70px 7%}.belief-list article{grid-template-columns:25px 1fr 1fr 20px;gap:14px}.interest{padding:22px}.interest h3{font-size:21px}.reflection{grid-template-columns:110px 1fr 90px}.reflection h3{font-size:18px}}@media(max-width:650px){header{height:82px;padding:0 24px;position:relative}.brand{font-size:42px}.menu{display:block;border:1px solid #a7aaa2;border-radius:25px;padding:10px 15px;background:transparent;color:var(--navy);font-size:11px}nav{display:none;position:absolute;left:0;right:0;top:82px;background:var(--cream);padding:25px;z-index:5;box-shadow:0 15px 20px #172e3b15;align-items:stretch;font-size:15px}nav.open{display:flex;flex-direction:column;gap:24px}.hero{padding:42px 28px 0;display:flex;flex-direction:column;gap:38px}.portrait-wrap{width:76%;max-width:310px;align-self:center;margin:0 0 0 3px}.spark{font-size:65px;right:-33px;top:15px}.portrait-caption{font-size:8px;margin-top:20px}.stamp{bottom:45px}.hero-copy{padding:0 0 0 4px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:69px;letter-spacing:-4px;margin:20px 0}h1 br{display:none}h1 em{display:block}.intro{font-size:19px}.hero-small{font-size:13px}.hero-bottom{font-size:7px;letter-spacing:1px;padding:10px 0 21px;margin-top:4px;width:100%}.hero-bottom>span:last-child{display:none}.draft-note{font-size:9px;line-height:1.6;padding:0 32px}.section{padding:65px 28px}.story{display:block}.story-copy{padding-top:0}.story-copy .lead{font-size:20px}h2{font-size:40px;letter-spacing:-1.5px}.section-top{display:block;margin-bottom:20px}.section-top p{padding:0}.belief-list article{grid-template-columns:20px 1fr 20px;gap:15px;padding:25px 0}.belief-list h3{font-size:23px}.belief-list p{grid-column:2;grid-row:2}.belief-list b{grid-column:3;grid-row:1}.interest-grid{grid-template-columns:1fr;gap:14px}.interest{min-height:270px;padding:27px}.lines{float:right;font-size:110px;margin:0 0 60px 20px}.interest>span{display:block;padding-top:12px}.interest h3{clear:both;margin-top:25px;font-size:26px}.small-label{display:block;margin-bottom:20px}.reflection{grid-template-columns:1fr 22px;gap:13px;padding:25px 0}.reflection span:first-child{grid-column:1/-1}.reflection h3{font-size:20px;line-height:1.5}.reflection span:last-child{font-size:0}.reflection span:last-child:after{content:'↗';font-size:22px}.contact{padding:60px 28px}.contact h2{font-size:43px;padding-right:12px}.contact h2>span{display:none}.contact-bottom{display:block}.contact .button{margin-top:15px}footer{padding:35px 28px;flex-wrap:wrap;gap:25px}footer .brand{width:20%}footer p{width:60%}footer>a:not(.brand),footer>span{font-size:9px}dialog{padding:60px 28px}dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* Keep the supplied portrait composition visible at every size. */
.portrait{aspect-ratio:2/3}.portrait img{object-position:center center}.upload{opacity:0;transition:opacity .2s}.portrait:hover .upload,.portrait:focus-within .upload{opacity:1}@media(hover:none){.upload{opacity:1}}

/* Supplied Schaefermeier logo, preserving its native proportions. */
.brand{letter-spacing:normal;flex-shrink:0}.brand-logo{display:block;width:280px;height:auto}footer .brand{width:auto}@media(max-width:1100px) and (min-width:651px){header{padding-left:3%;padding-right:3%}header .brand-logo{width:220px}nav{gap:16px}}@media(max-width:650px){.brand-logo{width:225px;max-width:58vw}footer .brand{width:100%}}

/* Symbol in navigation; full stacked signature in the footer. */
header .brand .brand-symbol{width:46px;height:60px;object-fit:contain;max-width:none}footer .brand .brand-stacked{width:190px;height:auto;max-width:none}@media(max-width:650px){header .brand .brand-symbol{width:36px;height:48px}footer .brand{width:auto}footer .brand .brand-stacked{width:145px}footer p{width:auto;flex:1}}

/* Match the supplied stacked logo reference in the header as well. */
header .brand .brand-stacked{display:block;width:160px;height:auto;max-width:none}header{min-height:120px}@media(max-width:650px){header{height:100px;min-height:100px}header .brand .brand-stacked{width:135px}nav{top:100px}}

.beliefs .section-top .personal-motto{font-family:Georgia,serif;font-style:italic;font-size:22px;line-height:1.5;color:var(--orange);padding-bottom:12px}@media(max-width:650px){.beliefs .section-top .personal-motto{font-size:21px;padding-bottom:0}}

/* Three-language navigation. */
header{gap:22px}.language-picker{display:flex;gap:2px;border:1px solid var(--line);padding:3px;border-radius:25px;flex-shrink:0}.language-picker button{border:0;border-radius:20px;padding:8px 9px;background:transparent;color:var(--navy);font-size:10px;min-width:32px}.language-picker button[aria-pressed=true]{background:var(--navy);color:var(--cream)}header nav{gap:20px}html[lang=de] .hero-copy h1{font-size:clamp(58px,6.3vw,94px)}html[lang=pt-PT] .hero-copy h1{font-size:clamp(60px,6.8vw,100px)}.hero-copy .eyebrow{flex-wrap:wrap}.reflection h3{overflow-wrap:anywhere}@media(max-width:1100px){header{position:relative;gap:16px;padding-left:25px;padding-right:25px}.language-picker{margin-left:auto}.menu{display:block;border:1px solid #a7aaa2;border-radius:25px;padding:10px 15px;background:transparent;color:var(--navy);font-size:11px}header nav{display:none;position:absolute;left:0;right:0;top:120px;background:var(--cream);padding:25px;z-index:5;box-shadow:0 15px 20px #172e3b15;font-size:15px}header nav.open{display:flex;flex-direction:column;gap:24px;align-items:stretch}}@media(max-width:650px){header{gap:8px;padding-left:18px;padding-right:18px}header .brand .brand-stacked{width:105px}header nav{top:100px}.language-picker button{padding:8px 7px;min-width:29px}.menu{padding:10px;font-size:10px}html[lang=de] .hero-copy h1,html[lang=pt-PT] .hero-copy h1{font-size:61px}.hero-bottom{gap:12px}.hero-bottom a{max-width:50%;text-align:right}.section-top .small-label{line-height:1.7}}

.belief-summary{max-width:590px;font-size:18px;line-height:1.8;color:#59676d;border-top:1px solid var(--line);padding-top:30px}.reflection-intro{border-top:1px solid var(--line);padding-top:30px;max-width:760px}.reflection-intro .lead{font-size:22px;line-height:1.6}.reflection-intro p{font-size:14px;line-height:1.8;color:#59676d}.hero-copy .hero-small{max-width:400px}.interest h3{overflow-wrap:normal;line-height:1.3}.contact-bottom{justify-content:flex-start}@media(max-width:650px){.belief-summary{font-size:17px}.reflection-intro .lead{font-size:20px}}

.contact > .button{margin-top:20px}.contact .button .contact-label{font-size:12px}.contact-status a{color:var(--cream);font-size:13px;text-decoration:underline;text-underline-offset:4px}.contact-status a:hover{color:#ffab69}

.contact-form{max-width:760px;margin-top:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:block;font-size:12px;line-height:1.6;margin-bottom:20px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:8px;background:#203b49;border:1px solid #71828b;border-radius:6px;padding:13px;color:var(--cream);font:inherit;font-size:16px}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #ffab69;outline-offset:2px}.form-privacy,.form-status{font-size:12px;line-height:1.8;color:#d1d9dc}.form-status{margin-top:20px}.contact-form .button{margin-top:5px}.contact-form .button span:first-child{font-size:12px}.contact-form button:disabled{opacity:.6;cursor:default}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:650px){.form-row{grid-template-columns:1fr;gap:0}}
