:root{--ink:#252228;--muted:#706b75;--purple:#7d3ea4;--deep:#482656;--line:#e6e2e9;--soft:#f6f5f7;--pale:#f3edf7;--max:1260px;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;color:var(--ink);background:#fff;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;font-size:1rem;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{line-height:1.1;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(3.2rem,5.5vw,5.6rem)}h2{font-size:clamp(2rem,3.8vw,3.6rem)}h3{font-size:1.65rem;letter-spacing:-.025em}p+p{margin-top:1rem}.container{max-width:var(--max);padding-inline:34px;margin-inline:auto}.section{padding-block:100px}.eyebrow{text-transform:uppercase;font-size:.875rem;line-height:1.5;letter-spacing:.14em;color:var(--muted);margin-bottom:22px}.accent{color:var(--purple)}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;letter-spacing:-.05em;font-weight:400}.muted{color:var(--muted)}.lead{color:var(--muted);font-size:1.15rem;line-height:1.75;max-width:630px}.soft{background:var(--soft)}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 24px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:4px;font-size:.9375rem;line-height:1.4;transition:background .2s,border-color .2s,transform .2s}.button:hover{background:var(--purple);border-color:var(--purple);transform:translateY(-1px)}.button.secondary{background:#fff;color:var(--ink);border-color:#cdc5d4}.button.secondary:hover{border-color:var(--purple);background:var(--pale)}.button.light{background:white;color:var(--ink);border-color:white}.button.light:hover{background:var(--pale)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:4px;font-size:.9375rem;line-height:1.5;display:inline-block}.text-link:hover{border-color:var(--purple);color:var(--purple)}:focus-visible{outline:3px solid var(--purple);outline-offset:5px}.skip-link{position:fixed;left:16px;top:16px;z-index:100;background:white;padding:12px 18px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.header{position:sticky;top:0;z-index:30;background:#ffffffee;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex-shrink:0;width:146px}.brand img{width:146px;height:73px;object-fit:contain}.nav{display:flex;gap:28px;align-items:center}.nav a{font-size:.9375rem;position:relative;padding-block:8px}.nav a:hover,.nav a[aria-current=page]{color:var(--purple)}.nav a[aria-current=page]:not(.contact-link):after{content:"";height:2px;width:18px;background:var(--purple);position:absolute;left:0;bottom:2px}.nav .contact-link{background:var(--purple);color:#fff;border-radius:4px;padding:10px 20px}.nav .contact-link:hover{background:var(--deep)}.menu-toggle{display:none;border:1px solid var(--line);background:white;min-height:44px;padding:9px 15px;border-radius:4px;font-size:.9375rem}
.hero-wrap{max-width:1450px;padding:24px 26px 0;margin:auto}.hero-gallery{position:relative;min-height:660px;isolation:isolate;background:var(--soft);overflow:hidden}.hero-visual{position:absolute;inset:0;height:100%;object-fit:cover;object-position:65% 50%;z-index:-1;transition:opacity .25s}.hero-content{width:460px;margin:48px 0 110px 42px;padding:35px 38px 38px;background:#fffffff5;box-shadow:0 10px 45px #2420290a;border-top:3px solid var(--purple)}.hero-content .eyebrow{font-size:.8125rem;letter-spacing:.12em;margin-bottom:22px}.hero-content h1{font-size:3.4rem;line-height:1.08;margin-bottom:24px}.hero-content .lead{font-size:1.0625rem}.hero-switches{position:absolute;bottom:27px;left:42px;display:flex;gap:9px;flex-wrap:wrap}.hero-choice{padding:10px 18px;min-height:45px;border:1px solid #ffffff80;border-radius:4px;background:#fffffff2;color:var(--ink);font-size:.875rem}.hero-choice[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.hero-caption{position:absolute;bottom:33px;right:32px;max-width:370px;text-align:right;padding:8px 13px;background:#fffffff2;font-size:.875rem;color:#49434c}.hero-caption span{display:block;font-size:.8125rem;color:var(--muted)}.intro-band{display:grid;grid-template-columns:1fr 1.6fr;gap:65px;padding-block:46px;border-bottom:1px solid var(--line)}.intro-band .eyebrow{margin:5px 0 0}.intro-band p{font-size:1.35rem;line-height:1.6;letter-spacing:-.015em}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:17px}.section-heading .text-link{flex-shrink:0}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-card{background:#fff;border:1px solid var(--line);padding:28px 28px 32px;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px #38243f0b}.service-number{display:block;color:var(--purple);font-size:.875rem;margin-bottom:40px}.service-card h3{margin-bottom:18px}.service-card p{color:var(--muted)}.service-card .text-link{margin-top:25px}.projects-featured{display:grid;grid-template-columns:1.35fr 1fr;gap:34px;align-items:start}.project-card:nth-child(2){margin-top:64px}.project-image{overflow:hidden;display:block}.project-image img{aspect-ratio:1.3;object-fit:cover;transition:transform .6s}.project-card:nth-child(2) img{aspect-ratio:1.05}.project-image:hover img{transform:scale(1.035)}.project-card figcaption{padding-top:20px}.project-card h3{font-size:1.55rem}.project-card p{font-size:.875rem;margin-top:7px;color:var(--muted)}.project-index{display:block;font-size:.8125rem;color:var(--purple);margin-bottom:10px}.story-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.story-split img{aspect-ratio:1.15;object-fit:cover}.story-copy h2{margin-bottom:26px}.story-copy p{color:var(--muted)}.story-copy .text-link{margin-top:27px}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:42px}.process-card{border-top:1px solid var(--line);padding-top:24px}.process-card .number{display:block;font-size:.875rem;color:var(--purple);margin-bottom:21px}.process-card h3{font-size:1.45rem;margin-bottom:17px}.process-card p{color:var(--muted)}
.planner-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}.planner-intro h2{margin-bottom:24px}.planner-intro p{color:var(--muted);max-width:450px}.planner-card{background:white;border:1px solid var(--line);padding:34px}.planner-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.planner-field{min-width:0;display:flex;flex-direction:column;gap:8px}.planner-field:last-child{grid-column:1 / -1}.planner-field label{font-size:.9375rem}.planner-field select{min-width:0;max-width:100%;width:100%;min-height:48px;border:1px solid #c9c3ce;border-radius:3px;padding:9px 12px;background:white;color:var(--ink);font-size:1rem}.planner-result{padding-top:27px;margin-top:27px;border-top:1px solid var(--line)}.planner-result .result-label{font-size:.875rem;color:var(--purple);display:block;margin-bottom:12px}.planner-result h3{font-size:1.5rem;margin-bottom:12px}.planner-result p{color:var(--muted);font-size:.9375rem}.planner-note{font-size:.8125rem;color:var(--muted);margin-top:15px}.planner-actions{gap:12px}.planner-status{font-size:.875rem;min-height:1.7em;margin-top:8px;color:var(--purple)}.brief-fallback{width:100%;min-height:180px;padding:12px;border:1px solid var(--line);font-size:.9375rem;resize:vertical}
.construction{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding:42px 44px;background:#f0f2ef;border-left:3px solid #638348}.construction .eyebrow{color:#476033;margin-bottom:15px}.construction h2{font-size:2.15rem}.construction p{color:#596051}.construction .button{margin-top:23px}.construction-note{font-size:.875rem;margin-top:8px;color:#596051}.construction-section{padding-block:0 90px}.cta{background:#29232f;color:#fff;padding-block:70px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:55px}.cta .eyebrow{color:#c8b2d6;margin-bottom:17px}.cta h2{font-size:clamp(2.2rem,3.8vw,3.5rem);max-width:810px}.cta .button{flex-shrink:0}.footer{padding-block:54px 26px}.footer-main{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:55px;padding-bottom:35px}.footer-name{font-size:1.3rem;margin-bottom:15px}.footer-tagline{color:var(--muted);font-size:.9375rem;max-width:310px}.footer-heading{font-size:.875rem;margin-bottom:17px;color:var(--muted)}.footer-nav{display:flex;flex-direction:column;gap:9px;font-size:.9375rem;align-items:flex-start}.footer-nav a:hover,.footer-contact a:hover{color:var(--purple)}.footer-contact p{font-size:.9375rem;margin-bottom:9px}.footer-contact a{overflow-wrap:anywhere}.footer-small{display:flex;justify-content:space-between;gap:30px;padding-top:22px;border-top:1px solid var(--line);font-size:.8125rem;color:var(--muted)}
.page-heading{padding-block:65px 55px;max-width:1060px}.page-heading h1{margin-bottom:28px}.page-heading .lead{max-width:695px}.page-heading .serif{color:var(--purple)}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding-block:55px;border-top:1px solid var(--line)}.service-detail:nth-child(even) .service-detail-image{order:2}.service-detail img{aspect-ratio:1.25;object-fit:cover}.service-detail h2{margin-bottom:25px}.service-detail p{color:var(--muted)}.plain-list{list-style:none;padding:0;margin:25px 0 0}.plain-list li{padding:13px 0;border-top:1px solid var(--line);font-size:.9375rem}.plain-list li:last-child{border-bottom:1px solid var(--line)}.faq-wrap{display:grid;grid-template-columns:1fr 1.25fr;gap:80px}.faq-list details{border-top:1px solid var(--line);padding-block:21px}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:1.125rem;line-height:1.5;cursor:pointer;padding-right:18px}.faq-list p{padding-top:16px;color:var(--muted)}
.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-block:24px;margin-bottom:14px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{min-height:44px;font-size:.875rem;padding:9px 17px;border-radius:3px;background:#fff;border:1px solid var(--line);color:var(--muted)}.filter:hover{border-color:var(--purple);color:var(--purple)}.filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.gallery-count{font-size:.875rem;color:var(--muted);white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 32px;padding-bottom:95px}.gallery-card[hidden]{display:none}.gallery-open{width:100%;display:block;border:0;padding:0;background:none;overflow:hidden;position:relative;text-align:left}.gallery-open img{aspect-ratio:1.38;object-fit:cover;transition:transform .5s}.gallery-open:hover img{transform:scale(1.035)}.gallery-open:after{content:"Kép megnyitása";position:absolute;bottom:18px;right:18px;padding:6px 13px;background:#fffffff2;border-radius:3px;font-size:.8125rem;opacity:0;transition:opacity .2s}.gallery-open:hover:after,.gallery-open:focus-visible:after{opacity:1}.gallery-card figcaption{padding-top:19px}.gallery-card h2{font-size:1.45rem;letter-spacing:-.02em}.gallery-card p{margin-top:7px;font-size:.875rem;color:var(--muted)}.lightbox{width:min(1180px,94vw);max-width:94vw;max-height:92dvh;padding:0;border:0;background:#fff;border-radius:5px;color:var(--ink);overflow:auto}.lightbox::backdrop{background:#17111de6}.lightbox-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 22px;border-bottom:1px solid var(--line)}.lightbox-top h2{font-size:1.15rem;letter-spacing:-.02em;line-height:1.4}.close-dialog,.project-prev,.project-next{background:white;border:1px solid var(--line);min-height:44px;padding:9px 15px;border-radius:3px;font-size:.875rem}.lightbox-image{max-height:69dvh;object-fit:contain;background:var(--soft)}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 22px}.lightbox-caption{font-size:.875rem;color:var(--muted)}.lightbox-nav{display:flex;gap:8px;align-items:center;flex-shrink:0}.lightbox-counter{font-size:.8125rem;color:var(--muted);margin-inline:8px}body.dialog-open{overflow:hidden}
.about-intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:75px;padding-bottom:95px}.about-intro img{aspect-ratio:1.13;object-fit:cover}.about-intro p{color:var(--muted);font-size:1.0625rem}.signature{margin-top:28px;color:var(--ink)!important;font-size:1rem!important}.signature span{display:block;color:var(--purple);font-size:.875rem}.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;margin-top:42px}.values-grid article{border-top:1px solid var(--line);padding-top:27px}.values-grid h3{font-size:1.5rem;margin-bottom:20px}.values-grid p{color:var(--muted)}.about-statement{padding-block:65px;font-size:clamp(2rem,3.8vw,3.7rem);line-height:1.2;letter-spacing:-.04em;max-width:1050px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding-bottom:95px}.contact-visual img{aspect-ratio:1.05;object-fit:cover}.image-label{padding-top:13px;display:flex;justify-content:space-between;gap:16px;font-size:.8125rem;color:var(--muted)}.contact-name{font-size:1.5rem;margin-bottom:8px}.contact-role{font-size:.9375rem;color:var(--muted);margin-bottom:32px}.contact-channel{display:block;padding:20px 0;border-top:1px solid var(--line);font-size:1.45rem;line-height:1.5;overflow-wrap:anywhere}.contact-channel:last-of-type{border-bottom:1px solid var(--line)}.contact-channel small{display:block;font-size:.875rem;color:var(--muted);margin-bottom:7px}.contact-channel:hover{color:var(--purple)}.contact-tip{margin-top:37px}.contact-tip h3{font-size:1.4rem;margin-bottom:20px}.contact-tip ol{margin:0;padding-left:22px;color:var(--muted)}.contact-tip li{padding-bottom:9px}.contact-faq{border-top:1px solid var(--line);padding-top:25px;margin-top:23px}.contact-faq h3{font-size:1.3rem;margin-bottom:12px}.contact-faq p{font-size:.9375rem;color:var(--muted)}
@media(max-width:1100px){.container{padding-inline:28px}.hero-content{margin-left:30px;width:435px;padding:32px}.hero-switches{left:30px}.hero-caption{right:24px;max-width:280px}.nav{gap:22px}.story-split,.planner-layout,.service-detail,.about-intro,.contact-layout{gap:45px}.service-card{padding:26px 22px}.footer-main{gap:32px}.construction{gap:40px}}
@media(max-width:800px){html{scroll-padding-top:90px}.header-inner{min-height:80px;flex-wrap:wrap;gap:0}.brand,.brand img{width:130px}.brand img{height:65px}.menu-toggle{display:block}.nav{display:none;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:5px 0 18px}.nav.is-open{display:flex}.nav a{padding:10px 0}.nav a[aria-current=page]:after{display:none}.nav .contact-link{margin-top:8px;padding:11px 15px;text-align:center}.hero-wrap{padding:20px 20px 0}.hero-gallery{min-height:0;display:grid;overflow:visible;background:#fff}.hero-content{grid-row:1;width:auto;margin:0;padding:25px 8px 32px;border-top:0;box-shadow:none;background:#fff}.hero-content h1{font-size:clamp(3.25rem,8vw,4.25rem)}.hero-content .lead{max-width:620px;font-size:1.125rem}.hero-visual{position:static;grid-row:2;z-index:0;height:auto;aspect-ratio:1.3;object-position:center}.hero-switches{position:static;grid-row:3;margin-top:17px;gap:8px}.hero-choice{border-color:var(--line);background:#fff}.hero-caption{position:static;grid-row:4;text-align:left;padding:13px 0 0;background:none;max-width:none;font-size:.875rem}.hero-caption span{display:inline;margin-left:8px}.intro-band{grid-template-columns:1fr;gap:17px;padding-block:34px}.intro-band p{font-size:1.25rem}.section{padding-block:68px}.service-grid{gap:18px}.service-card{padding:24px 20px}.service-number{margin-bottom:25px}.service-card h3{font-size:1.4rem}.service-card p{font-size:.9375rem}.projects-featured{gap:24px}.project-card:nth-child(2){margin-top:40px}.story-split,.planner-layout,.service-detail,.about-intro,.contact-layout{grid-template-columns:1fr;gap:34px}.story-split img{aspect-ratio:1.5}.story-copy{max-width:680px}.planner-layout{gap:32px}.planner-intro p{max-width:630px}.process-grid{gap:25px}.process-card h3{font-size:1.3rem}.construction{grid-template-columns:1fr;gap:22px;padding:32px}.construction-section{padding-bottom:68px}.cta-inner{flex-direction:column;align-items:flex-start;gap:28px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1 / -1}.footer-tagline{max-width:550px}.page-heading{padding-block:48px 38px}.page-heading h1{font-size:clamp(2.8rem,7vw,4.3rem)}.service-detail{padding-block:40px}.service-detail:nth-child(even) .service-detail-image{order:0}.service-detail img{aspect-ratio:1.4}.faq-wrap{grid-template-columns:1fr;gap:35px}.gallery-toolbar{flex-direction:column;align-items:flex-start;gap:15px}.gallery-grid{gap:34px 24px;padding-bottom:68px}.gallery-open:after{display:none}.values-grid{gap:28px}.values-grid h3{font-size:1.35rem}.about-intro,.contact-layout{padding-bottom:68px}.contact-visual{order:2}.contact-visual img{aspect-ratio:1.5}.lightbox-bottom{flex-direction:column;align-items:flex-start;gap:12px}.lightbox-nav{align-self:flex-end}}
@media(max-width:580px){.container{padding-inline:21px}.hero-wrap{padding-inline:20px}.hero-content{padding:23px 0 31px}.hero-content h1{font-size:3.2rem}.hero-content .eyebrow{font-size:.8125rem;letter-spacing:.08em}.hero-content .lead{font-size:1.0625rem}.hero-visual{aspect-ratio:1.12}.hero-choice{font-size:.875rem;padding-inline:15px}.hero-caption span{display:block;margin-left:0;margin-top:3px}.eyebrow{font-size:.8125rem;letter-spacing:.11em}.section-heading{flex-direction:column;align-items:flex-start;gap:21px;margin-bottom:30px}.service-grid,.projects-featured,.process-grid,.gallery-grid,.values-grid{grid-template-columns:1fr;gap:30px}.service-card{padding:25px 26px}.service-card h3{font-size:1.7rem}.service-card p{font-size:1rem}.service-number{margin-bottom:24px}.project-card:nth-child(2){margin:0}.project-card:nth-child(2) img,.project-image img{aspect-ratio:1.35}.planner-card{padding:25px 21px}.planner-fields{grid-template-columns:1fr;gap:18px}.planner-field:last-child{grid-column:auto}.planner-actions{align-items:stretch;flex-direction:column}.planner-actions .button{width:100%}.construction{padding:27px 24px}.construction h2{font-size:1.85rem}.footer-main{grid-template-columns:1fr;gap:30px}.footer-brand{grid-column:auto}.footer-nav{flex-direction:row;flex-wrap:wrap;gap:13px 25px}.footer-small{flex-direction:column;gap:6px}.page-heading h1{font-size:3rem}.contact-channel{font-size:1.25rem}.gallery-open img{aspect-ratio:1.35}.lightbox-top{padding:12px 14px;gap:15px}.lightbox-top h2{font-size:1rem}.lightbox-bottom{padding:13px 14px}.lightbox-image{max-height:62dvh}.lightbox-nav{align-self:stretch;justify-content:space-between}.close-dialog{padding-inline:12px}.button{padding:13px 21px}.about-statement{padding-block:48px}}
.contact-profile{width:100%;max-width:480px;justify-self:end;align-self:start;border:1px solid var(--line);background:var(--soft)}.contact-visual.contact-profile img{aspect-ratio:4/5;object-fit:cover;object-position:50% 35%}.profile-caption{padding:25px 27px 28px;border-top:3px solid var(--purple)}.profile-caption .eyebrow{font-size:.8125rem;letter-spacing:.08em;margin-bottom:12px}.profile-name{font-size:1.8rem;line-height:1.2;letter-spacing:-.035em}.profile-caption p:last-child{color:var(--muted);font-size:1rem;margin-top:12px}.contact-privacy{font-size:.9375rem;color:var(--muted);line-height:1.65;margin-top:23px;max-width:510px}.contact-privacy a,.planner-note a{text-decoration:underline;text-underline-offset:3px;color:var(--purple)}
.legal-heading{max-width:850px}.legal-heading h1{font-size:clamp(2.3rem,5vw,4.8rem)}.legal-version{font-size:.875rem;color:var(--muted);margin-top:22px}.legal-draft{border-left:3px solid var(--purple);background:var(--pale);padding:19px 23px;margin-top:24px;font-size:.9375rem}.legal-draft p{margin-top:7px;color:#51465a}.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:70px;padding-bottom:85px;align-items:start}.legal-toc{position:sticky;top:125px;border-top:1px solid var(--line);padding-top:25px;display:flex;flex-direction:column;gap:13px;font-size:.9375rem;line-height:1.5}.legal-toc .eyebrow{margin-bottom:6px}.legal-toc a:hover{color:var(--purple)}.legal-content{min-width:0;max-width:790px}.legal-section{border-top:1px solid var(--line);padding-block:28px 43px;scroll-margin-top:120px}.legal-number{display:block;color:var(--purple);font-size:.875rem;margin-bottom:11px}.legal-section h2{font-size:clamp(1.65rem,2.7vw,2.15rem);line-height:1.2;letter-spacing:-.025em;margin-bottom:23px}.legal-section h3{font-size:1.15rem;line-height:1.4;letter-spacing:-.015em;margin-block:25px 12px}.legal-section p,.legal-section li{font-size:1rem;line-height:1.8;color:#514b57}.legal-section ul{margin-block:18px;padding-left:22px}.legal-section li+li{margin-top:14px}.legal-section a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;color:var(--purple)}.legal-details{margin-block:24px;display:grid;gap:0}.legal-details>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;padding-block:12px;border-bottom:1px solid var(--line)}.legal-details dt{font-size:.9375rem;color:var(--muted)}.legal-details dd{margin:0;font-size:1rem;overflow-wrap:anywhere}.legal-pending{color:var(--purple)}.legal-provider{border-left:2px solid var(--line);padding-left:23px;margin-block:26px}.legal-provider h3{margin-top:0}.legal-provider>a{display:inline-block;font-size:.9375rem;margin-top:10px}.legal-contact-box{padding:25px 28px;background:var(--soft);margin-top:28px}.legal-contact-box h3{margin-top:0}
@media(max-width:1100px){.legal-layout{gap:40px;grid-template-columns:215px minmax(0,1fr)}}
@media(max-width:800px){.contact-profile{max-width:none;display:grid;grid-template-columns:170px minmax(0,1fr);align-items:center;order:-1}.contact-visual.contact-profile img{height:auto;aspect-ratio:4/5}.profile-caption{border-top:0;border-left:3px solid var(--purple);padding:18px 23px}.profile-caption .eyebrow{font-size:.8125rem;letter-spacing:.05em}.profile-name{font-size:1.6rem}.legal-layout{grid-template-columns:1fr;gap:34px;padding-bottom:60px}.legal-toc{position:static;display:grid;grid-template-columns:1fr 1fr;gap:13px 25px}.legal-toc .eyebrow{grid-column:1/-1}.legal-section{scroll-margin-top:100px}.legal-heading h1{font-size:clamp(2.3rem,7vw,4rem)}}
@media(max-width:580px){.contact-profile{grid-template-columns:120px minmax(0,1fr)}.profile-caption{padding:14px 15px}.profile-caption .eyebrow{margin-bottom:8px;line-height:1.5;font-size:.75rem;letter-spacing:.02em}.profile-name{font-size:1.4rem}.profile-caption p:last-child{font-size:.875rem;margin-top:8px}.legal-toc{grid-template-columns:1fr;gap:13px}.legal-heading h1{font-size:2.6rem}.legal-draft{padding:17px 18px}.legal-section{padding-bottom:34px}.legal-details>div{grid-template-columns:1fr;gap:4px}.legal-contact-box{padding:22px 20px}.legal-provider{padding-left:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.footer-registration{display:block;font-size:.875rem;line-height:1.55;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}
.signature .signature-registration{color:var(--muted);margin-top:4px}

.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:22px}
.social-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:.9375rem;line-height:1.4;white-space:nowrap;transition:border-color .2s,background-color .2s}
.social-link svg{display:block;width:22px;height:22px;flex:none}
.social-link--facebook svg{color:#0866ff}
.social-link--instagram svg{color:var(--purple)}
.social-link:hover{background:var(--pale);border-color:var(--purple)}
.social-link:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
.social-links--compact .social-link{width:44px;height:44px;padding:10px;position:relative}
.social-links--compact .social-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-social{max-width:1100px;margin:22px auto 0;padding-inline:2px}
.contact-social .social-links{margin:0}
