:root{--red:#b50012;--red-dark:#79000b;--ink:#171717;--muted:#666;--cream:#f6f1eb;--line:#e6ded6;--gold:#c89552;--white:#fff;--shadow:0 24px 70px rgba(36,20,15,.16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
img{display:block;max-width:100%}
a{color:inherit}
.skip{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.75rem 1rem;z-index:99}.skip:focus{left:1rem}
.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,5.5rem);border-bottom:1px solid rgba(0,0,0,.08);background:rgba(255,255,255,.95);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
.brand{width:170px;height:68px;overflow:hidden;display:flex;align-items:flex-start}.brand img{width:170px;transform:translateY(-2px)}
nav{display:flex;gap:2rem}nav a{text-decoration:none;font-size:.92rem;font-weight:700;letter-spacing:.04em}nav a:hover{color:var(--red)}
.header-actions{display:flex;align-items:center;gap:.75rem}.language{border:1px solid #d6cbc2;background:#fff;border-radius:999px;padding:.65rem .85rem;font-weight:800;cursor:pointer}.language span{color:#aaa;margin:0 .22rem}
.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--red);color:#fff;border:2px solid var(--red);border-radius:5px;padding:.9rem 1.2rem;font-weight:800;line-height:1.1;transition:.2s}.button:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-1px)}.button-small{padding:.72rem .95rem;font-size:.9rem}.button-outline{background:transparent;color:var(--ink);border-color:#b8aaa0}.button-outline:hover{color:#fff}
.hero{min-height:calc(100vh - 92px);display:grid;grid-template-columns:1.06fr .94fr;overflow:hidden;background:linear-gradient(120deg,#fff 0 54%,var(--cream) 54%);position:relative}
.hero:before{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(181,0,18,.13);border-radius:50%;left:-110px;top:50px}
.hero-copy{padding:clamp(4rem,8vw,8.5rem) clamp(1.5rem,6vw,7rem);padding-right:clamp(2rem,5vw,5rem);align-self:center;position:relative;z-index:1}
.eyebrow{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.18em;color:var(--red);font-size:.78rem;font-weight:900}
h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;line-height:1.04;margin:0}
h1{font-size:clamp(3.3rem,6.2vw,6.8rem);max-width:820px}h2{font-size:clamp(2.4rem,4vw,4.4rem)}
.hero-lede{font-size:clamp(1.05rem,1.5vw,1.3rem);color:#4d4a47;max-width:680px;margin:1.7rem 0 2.1rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.trust-row{display:flex;flex-wrap:wrap;gap:.7rem 1.4rem;margin-top:2.2rem;font-size:.88rem;font-weight:700;color:#555}.trust-row span:before{content:"✓";color:var(--red);margin-right:.4rem}
.hero-visual{min-height:650px;display:flex;align-items:center;justify-content:center;padding:4rem 4rem 4rem 1rem;position:relative}.photo-frame{width:min(90%,600px);aspect-ratio:4/5;overflow:hidden;border-radius:48% 48% 8px 8px;box-shadow:var(--shadow);border:10px solid rgba(255,255,255,.75)}.photo-frame img{width:100%;height:100%;object-fit:cover}
.hero-card{position:absolute;left:2%;bottom:13%;background:#fff;padding:1rem 1.25rem;border-left:5px solid var(--red);box-shadow:0 14px 36px rgba(0,0,0,.16);display:grid}.hero-card strong{font-family:Georgia,serif;font-size:1.25rem}.hero-card span{color:var(--muted);font-size:.82rem}
.services,.team{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,6vw,7rem)}.section-heading{max-width:800px;margin-bottom:3rem}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:2.2rem 1.6rem;min-height:285px;border-right:1px solid var(--line)}.service-grid article:last-child{border-right:0}.service-grid article:hover{background:var(--cream)}.service-number{font-family:Georgia,serif;color:var(--red);font-size:1rem}.service-grid h3{font-family:Georgia,serif;font-size:1.55rem;line-height:1.2;margin:3rem 0 .8rem}.service-grid p{color:var(--muted);margin:0}
.about{display:grid;grid-template-columns:1fr 1fr;background:var(--cream)}.about-image{min-height:650px;position:relative}.about-image img{width:100%;height:100%;object-fit:cover}.founder-label{position:absolute;left:2rem;bottom:2rem;background:#fff;border-left:5px solid var(--red);box-shadow:0 14px 36px rgba(0,0,0,.16);padding:1rem 1.35rem;display:grid}.founder-label strong{font-family:Georgia,serif;font-size:1.35rem}.founder-label span{color:var(--muted);font-size:.86rem}.about-copy{padding:clamp(4rem,8vw,8rem);align-self:center}.about-copy p:not(.eyebrow){color:#555;font-size:1.08rem;margin:1.8rem 0}.text-link{text-decoration:none;font-weight:900;color:var(--red)}
.team{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.team-card{min-height:430px;position:relative;overflow:hidden;background:#222}.team-card img{width:100%;height:100%;object-fit:cover;opacity:.93;transition:.4s}.team-card:hover img{transform:scale(1.025)}.team-card div{position:absolute;left:0;right:0;bottom:0;padding:4rem 1.4rem 1.4rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.82))}.team-card h3{font-family:Georgia,serif;font-size:1.7rem;margin:0}.team-card p{margin:.15rem 0 0}.team-support:last-child img{object-position:center 30%}
.contact{margin:0 clamp(1.25rem,5vw,5.5rem) clamp(4rem,7vw,7rem);padding:clamp(3rem,6vw,6rem);background:linear-gradient(135deg,var(--red-dark),var(--red));color:#fff;display:grid;grid-template-columns:1.25fr .75fr;gap:3rem;align-items:center;position:relative;overflow:hidden}.contact:after{content:"T";position:absolute;right:-.02em;bottom:-.45em;font-family:Georgia,serif;font-size:26rem;opacity:.06;font-weight:bold}.contact .light{color:#ffd5d8}.contact p:not(.eyebrow){font-size:1.1rem;max-width:620px}.contact-actions{display:grid;gap:.9rem;position:relative;z-index:1}.contact-actions a{display:grid;text-decoration:none;background:#fff;color:var(--ink);padding:1rem 1.2rem;border-radius:5px}.contact-actions small{color:var(--red);text-transform:uppercase;font-weight:900;letter-spacing:.12em}.contact-actions strong{overflow-wrap:anywhere}
footer{border-top:1px solid var(--line);padding:2.5rem clamp(1.25rem,5vw,5.5rem);display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;color:#666;font-size:.84rem}footer img{width:100px;height:58px;object-fit:cover;object-position:top}
@media(max-width:980px){nav{display:none}.hero{grid-template-columns:1fr;background:linear-gradient(#fff 0 50%,var(--cream) 50%)}.hero-visual{min-height:570px;padding:1rem 2rem 4rem}.hero-card{left:8%}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.service-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.about{grid-template-columns:1fr}.about-image{min-height:520px}.team-grid{grid-template-columns:1fr 1fr}.team-support:last-child{grid-column:1/-1}.contact{grid-template-columns:1fr}footer{grid-template-columns:1fr;text-align:center;justify-items:center}}
@media(max-width:620px){.site-header{height:78px;padding:0 1rem}.brand{width:116px;height:55px}.brand img{width:125px}.button-small{display:none}.language{padding:.55rem .7rem}.hero{min-height:auto}.hero-copy{padding:4.2rem 1.25rem 3rem}h1{font-size:3.25rem}.hero-actions{display:grid}.hero-visual{min-height:460px;padding:0 1.25rem 3.5rem}.photo-frame{width:100%;max-width:410px}.hero-card{bottom:8%;left:5%}.trust-row{display:grid}.services,.team{padding:4.5rem 1.25rem}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);min-height:220px}.service-grid article:nth-child(3){border-bottom:1px solid var(--line)}.service-grid h3{margin-top:1.8rem}.about-image{min-height:430px}.founder-label{left:1rem;bottom:1rem}.about-copy{padding:4rem 1.25rem}.team-grid{grid-template-columns:1fr}.team-support:last-child{grid-column:auto}.team-card{min-height:420px}.contact{margin:0 0 3rem;padding:4rem 1.25rem}.contact-actions strong{font-size:.9rem}footer{padding:2rem 1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.team-card img{transition:none}}
