:root{--green:#075b3b;--green-dark:#043d29;--green-soft:#eaf4ef;--orange:#f36b16;--cream:#fffaf4;--ink:#17251f;--muted:#607068;--line:#dce7e1;--white:#fff;--shadow:0 22px 60px rgba(4,61,41,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--white);line-height:1.55}a{color:inherit}button,a{touch-action:manipulation}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;padding:10px;z-index:50}.skip-link:focus{left:10px}.site-header{height:78px;display:flex;align-items:center;gap:32px;padding:0 clamp(20px,5vw,80px);position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(7,91,59,.08)}.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}.brand img{object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:Manrope,sans-serif;font-size:15px;letter-spacing:.04em;color:var(--orange)}.brand small{font-weight:700;color:var(--green);letter-spacing:.23em;margin-top:5px}.site-header nav{display:flex;gap:26px}.site-header nav a{text-decoration:none;font-weight:600;font-size:14px}.site-header nav a:hover{color:var(--orange)}.language{border:1px solid var(--green);border-radius:999px;background:#fff;color:var(--green);font-weight:800;padding:8px 12px;cursor:pointer}.hero{min-height:calc(100vh - 78px);display:grid;place-items:center;position:relative;overflow:hidden;padding:72px 20px;background:radial-gradient(circle at 50% 15%,#fff 0,#fffaf5 43%,#edf6f1 100%)}.hero-content{max-width:850px;text-align:center;position:relative;z-index:2}.hero-logo{width:clamp(145px,18vw,210px);height:auto;object-fit:contain;filter:drop-shadow(0 16px 30px rgba(7,91,59,.12))}.eyebrow{font-family:Manrope,sans-serif;color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.2em;margin:20px 0 12px}.hero h1,.section h2,.tools-section h2,.contact h2{font-family:Manrope,sans-serif;letter-spacing:-.045em;line-height:1.05;margin:0}.hero h1{font-size:clamp(38px,6vw,72px);max-width:820px}.hero-copy{font-size:clamp(17px,2vw,21px);color:var(--muted);max-width:650px;margin:24px auto}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:12px;text-decoration:none;font-weight:800}.button.primary{background:var(--orange);color:#fff;box-shadow:0 14px 30px rgba(243,107,22,.25)}.button.secondary{background:#fff;color:var(--green);border:1px solid var(--line)}.button:hover{transform:translateY(-2px)}.promise{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--green);margin-top:28px}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:330px;height:330px;background:rgba(243,107,22,.08);left:-100px;top:18%}.orb-two{width:430px;height:430px;background:rgba(7,91,59,.08);right:-180px;bottom:-80px}.section{padding:100px clamp(20px,7vw,110px)}.section-heading{max-width:650px;margin-bottom:46px}.section-heading .eyebrow,.tools-copy .eyebrow,.contact .eyebrow{margin-top:0}.section h2,.tools-section h2,.contact h2{font-size:clamp(34px,4.2vw,54px)}.section-heading>p:last-child,.tools-copy>p:last-child,.contact-card>div>p:last-child{font-size:18px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;min-height:245px;display:flex;flex-direction:column;transition:.2s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.service-card.featured{background:var(--green);color:#fff;border-color:var(--green)}.service-card .icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--green-soft);color:var(--green);font-size:24px;font-weight:700}.service-card.featured .icon{background:rgba(255,255,255,.14);color:#fff}.service-card h3{font-family:Manrope,sans-serif;font-size:22px;line-height:1.15;margin:22px 0 10px}.service-card p{color:var(--muted);margin:0 0 20px}.service-card.featured p{color:rgba(255,255,255,.78)}.service-card a{font-weight:800;color:var(--orange);text-decoration:none;margin-top:auto}.service-card.featured a{color:#ffd8bd}.tools-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start;padding:100px clamp(20px,7vw,110px);background:var(--green-dark);color:#fff}.tools-copy{position:sticky;top:120px}.tools-copy>p:last-child{color:rgba(255,255,255,.68)}.tool-list{border-top:1px solid rgba(255,255,255,.2)}.tool-list a{display:grid;grid-template-columns:52px 1fr 30px;align-items:center;gap:12px;min-height:82px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2);transition:.2s}.tool-list a:hover{padding-left:10px;color:#ffc49f}.tool-list span{font-size:12px;color:#8bb9a8}.tool-list strong{font-family:Manrope,sans-serif;font-size:clamp(18px,2vw,24px)}.tool-list b{font-size:20px}.contact{background:var(--cream)}.contact-card{max-width:1180px;margin:auto;background:#fff;border-radius:28px;padding:clamp(28px,5vw,64px);box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.contact-actions{display:grid;gap:10px}.contact-link{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 18px;border-radius:12px;border:1px solid var(--line);text-decoration:none}.contact-link small{color:var(--muted)}.contact-link strong{font-size:15px;word-break:break-word;text-align:right}.contact-link.whatsapp{background:var(--green-soft);color:var(--green)}footer{display:grid;grid-template-columns:1fr 1.3fr auto;gap:35px;align-items:center;padding:35px clamp(20px,5vw,80px);background:#fff;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.footer-brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.footer-brand span{display:flex;flex-direction:column}.footer-brand small{color:var(--muted)}.floating-whatsapp{position:fixed;right:20px;bottom:20px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;text-decoration:none;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.2);z-index:15}
@media(max-width:850px){.site-header nav{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.tools-section,.contact-card{grid-template-columns:1fr}.tools-copy{position:static}.tools-section{gap:35px}footer{grid-template-columns:1fr;text-align:left}}
@media(max-width:560px){.site-header{height:68px;padding:0 15px}.brand img{width:44px;height:44px}.brand strong{font-size:12px}.brand small{font-size:9px}.hero{min-height:calc(100svh - 68px);padding-top:48px}.hero-actions{flex-direction:column}.button{width:100%}.section,.tools-section{padding:72px 18px}.service-grid{grid-template-columns:1fr}.service-card{min-height:220px}.contact-card{border-radius:20px;padding:26px 20px}.contact-link{align-items:flex-start;flex-direction:column}.contact-link strong{text-align:left}footer{padding:28px 20px}}

.updates{background:#fffaf5}.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.update-card{display:flex;flex-direction:column;min-height:235px;padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;transition:.2s}.update-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.update-card>span{font-size:12px;font-weight:800;letter-spacing:.15em;color:var(--orange)}.update-card h3{font-family:Manrope,sans-serif;font-size:21px;line-height:1.2;margin:18px 0 10px}.update-card p{color:var(--muted);margin:0 0 22px}.update-card b{margin-top:auto;color:var(--green);font-size:14px}.location{background:var(--green-dark)}.location-card{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;color:#fff}.location-copy address{font-style:normal;font-size:clamp(19px,2.2vw,25px);line-height:1.5;margin:28px 0;color:rgba(255,255,255,.82)}.location-actions{display:flex;gap:12px;flex-wrap:wrap}.location .button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}.location-card>img{width:100%;height:380px;object-fit:cover;border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.28)}
@media(max-width:850px){.update-grid{grid-template-columns:1fr}.location-card{grid-template-columns:1fr}.location-card>img{height:320px}}
@media(max-width:560px){.location-actions{flex-direction:column}.update-card{min-height:0}.location-card{gap:34px}.location-card>img{height:250px}}
.important-update{max-width:950px;display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;padding:30px 34px;background:#fff;border:1px solid var(--line);border-left:6px solid var(--orange);border-radius:18px;box-shadow:0 12px 35px rgba(7,91,59,.07)}.important-update>span{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--orange)}.important-update h3{font-family:Manrope,sans-serif;font-size:22px;margin:0 0 8px}.important-update p{font-size:16px;color:var(--muted);margin:0}
@media(max-width:650px){.important-update{grid-template-columns:1fr;gap:14px;padding:26px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card,.tool-list a{transition:none}}

/* Branded photo hero */
.hero{padding-inline:clamp(20px,5vw,80px);background:radial-gradient(circle at 30% 15%,#fff 0,#fffaf5 43%,#edf6f1 100%)}
.hero-layout{width:min(1280px,100%);display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(45px,6vw,90px);position:relative;z-index:2}
.hero-content{max-width:610px;text-align:left}
.hero-logo{width:clamp(92px,10vw,126px)}
.hero h1{font-size:clamp(42px,5vw,68px);max-width:650px}
.hero-copy{max-width:570px;margin:24px 0}
.hero-actions{justify-content:flex-start}
.hero-gallery{height:min(650px,68vw);max-height:650px;min-height:520px;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:14px;position:relative}
.photo{margin:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:#e5ece8}
.photo img{width:100%;height:100%;object-fit:cover;display:block}
.photo-office{grid-row:1/3}
.photo-office img{object-position:48% center}
.photo-services img{object-position:center center}
.photo-desk img{object-position:center 26%}
.private-forms{margin:24px 0 0;padding:20px;border-radius:16px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.76);font-size:16px}
.citizenship-promo{margin:0;padding:38px clamp(20px,7vw,110px);display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:var(--green-dark);color:#fff;position:relative;overflow:hidden}.citizenship-promo:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(243,107,22,.16);right:-90px;top:-130px}.promo-badge{align-self:start;background:var(--orange);color:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;letter-spacing:.08em;white-space:nowrap}.promo-copy{max-width:750px}.promo-copy .eyebrow{margin:0 0 8px;color:#ffb17e}.promo-copy h2{margin:0;font-family:Manrope,sans-serif;font-size:clamp(27px,3vw,42px);line-height:1.08;letter-spacing:-.04em}.promo-copy p:last-child{margin:12px 0 0;color:rgba(255,255,255,.75);font-size:17px}.promo-button{position:relative;z-index:1;display:flex;align-items:center;gap:18px;background:#fff;color:var(--green-dark);padding:17px 20px;border-radius:14px;text-decoration:none;font-weight:800;box-shadow:0 12px 28px rgba(0,0,0,.16)}.promo-button b{color:var(--orange);font-size:22px}.immigration-card{grid-column:span 2}.service-tags{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 22px}.service-tags span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:13px;font-weight:600;color:#fff}
@media(max-width:960px){.hero-layout{grid-template-columns:1fr}.hero-content{max-width:760px;text-align:center;margin:auto}.hero-copy{margin:24px auto}.hero-actions{justify-content:center}.hero-gallery{width:min(760px,100%);height:560px;min-height:0;margin:auto}}
@media(max-width:850px){.citizenship-promo{grid-template-columns:1fr}.promo-badge{justify-self:start}.promo-button{justify-content:space-between}.immigration-card{grid-column:auto}}
@media(max-width:560px){.hero-gallery{height:430px;grid-template-columns:1.35fr .65fr;gap:8px}.photo{border-radius:15px}.hero-logo{width:88px}.hero h1{font-size:clamp(38px,12vw,52px)}.citizenship-promo{padding:30px 18px;gap:18px}.promo-copy p:last-child{font-size:16px}}

/* Guided service selection */
.flow-page{min-height:100vh;background:linear-gradient(145deg,#fffaf4,#edf6f1)}.back-home{font-weight:700;color:var(--green);text-decoration:none;margin-left:auto}.service-flow{width:min(920px,calc(100% - 36px));margin:0 auto;padding:70px 0 100px}.flow-heading{text-align:center;max-width:680px;margin:0 auto}.flow-heading h1{font-family:Manrope,sans-serif;font-size:clamp(38px,6vw,62px);letter-spacing:-.045em;line-height:1.05;margin:0}.flow-heading>p:last-child{font-size:18px;color:var(--muted)}.flow-progress{display:flex;align-items:center;justify-content:center;margin:36px auto 28px}.flow-progress span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#dfe8e3;color:var(--muted);font-weight:800}.flow-progress span.active{background:var(--orange);color:#fff}.flow-progress i{width:72px;height:2px;background:#dfe8e3}.choice-panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(24px,5vw,48px);box-shadow:var(--shadow)}.choice-panel.hidden{display:none}.choice-panel h2{font-family:Manrope,sans-serif;font-size:clamp(25px,3vw,34px);margin:0 0 26px}.option-grid{display:grid;gap:12px}.service-option{width:100%;display:grid;grid-template-columns:48px 1fr 28px;align-items:center;gap:16px;border:1px solid var(--line);border-radius:15px;background:#fff;padding:18px;text-align:left;color:var(--ink);cursor:pointer;font:inherit}.service-option:hover,.service-option:focus-visible{border-color:var(--orange);box-shadow:0 8px 0 3px rgba(243,107,22,.08)}.service-option>span:nth-child(2){display:flex;flex-direction:column}.service-option strong{font-family:Manrope,sans-serif;font-size:18px}.service-option small{font-size:15px;color:var(--muted);margin-top:3px}.option-number{color:var(--orange);font-weight:800}.change-choice{border:0;background:none;color:var(--green);font:inherit;font-weight:800;padding:0;cursor:pointer}.selected-label{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--orange);font-weight:800;margin:28px 0 6px}.decision-question{font-size:19px;font-weight:700;margin:35px 0 16px}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.decision-card{display:grid;grid-template-columns:48px 1fr 24px;grid-template-rows:auto auto;gap:3px 12px;padding:24px;border:1px solid var(--line);border-radius:17px;text-decoration:none;align-items:center}.decision-card .decision-icon{grid-row:1/3;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-size:22px;font-weight:800}.decision-card strong{font-family:Manrope,sans-serif;font-size:18px}.decision-card small{font-size:14px;color:var(--muted)}.decision-card b{grid-column:3;grid-row:1/3}.decision-card:hover{border-color:var(--orange);transform:translateY(-2px)}.decision-card.whatsapp{background:#f0fbf4}.decision-card.whatsapp .decision-icon{background:#25d366;color:#fff}
@media(max-width:700px){.back-home{font-size:13px}.service-flow{padding-top:42px}.decision-grid{grid-template-columns:1fr}.decision-card{padding:18px}}
.service-card{border:1px solid rgba(7,91,59,.22);border-top:5px solid var(--green);min-height:265px;background:#fff4e8}.service-card:nth-child(2n){border-color:rgba(243,107,22,.25);border-top-color:var(--orange);background:#edf8f2}.service-card .service-tags span{background:rgba(255,255,255,.74);color:var(--green);border:1px solid rgba(7,91,59,.1)}.service-card:nth-child(2n) .icon{background:#fff1e7;color:var(--orange)}.browser-help{margin-top:22px;padding:16px 18px;border-radius:14px;background:#fff8f2;border:1px solid #f6d7c2}.browser-help p{margin:0 0 10px;color:var(--muted);font-size:14px}.browser-help button{border:0;border-radius:10px;background:var(--green);color:#fff;padding:10px 13px;font:inherit;font-size:14px;font-weight:800;cursor:pointer}.browser-help #copyStatus{display:inline-block;margin-left:10px;color:var(--green);font-size:14px;font-weight:700}
.service-guidance{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:-20px 0 32px;padding:22px 24px;border-radius:16px;background:linear-gradient(110deg,#edf8f2,#fff4e8);border:1px solid var(--line)}.service-guidance strong{font-family:Manrope,sans-serif;font-size:19px;color:var(--green)}.service-guidance p{margin:5px 0 0;max-width:650px;color:var(--muted);font-size:16px}.guidance-actions{display:flex;gap:10px;flex:0 0 auto}.service-guidance a{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 18px;border-radius:11px;color:#fff;text-decoration:none;font-weight:800;text-align:center}.service-guidance .consult-button{background:var(--green)}.service-guidance .appointment-button{background:var(--orange)}.quick-links{display:flex;align-items:center;gap:12px;margin-top:auto;flex-wrap:wrap}.quick-links a{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 18px;border-radius:11px;background:var(--green);color:#fff;text-decoration:none;font-weight:800;box-shadow:0 9px 20px rgba(7,91,59,.14)}.quick-links a:hover{background:var(--green-dark)}@media(max-width:960px){.service-guidance{align-items:stretch;flex-direction:column;gap:15px;margin-top:-14px}.guidance-actions{width:100%}.guidance-actions a{flex:1}}@media(max-width:560px){.guidance-actions,.quick-links{align-items:stretch;flex-direction:column}.guidance-actions a,.quick-links a{text-align:center;width:100%}}

.category-list{display:grid;grid-template-columns:1fr 1fr;gap:18px}.category-card{border-radius:22px;border:2px solid;overflow:hidden;align-self:start;box-shadow:0 10px 28px rgba(4,61,41,.06)}.tone-orange{background:#fff0e4;border-color:var(--green)}.tone-green{background:#eaf6ef;border-color:var(--orange)}.category-toggle{width:100%;min-height:150px;display:grid;grid-template-columns:54px 1fr 32px;align-items:center;gap:18px;padding:25px;border:0;background:transparent;text-align:left;font:inherit;color:var(--ink);cursor:pointer}.category-toggle .icon{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:#fff;color:var(--green);font-size:25px;font-weight:800}.tone-green .icon{color:var(--orange)}.category-toggle>span:nth-child(2){display:flex;flex-direction:column}.category-toggle strong{font-family:Manrope,sans-serif;font-size:23px;line-height:1.15}.category-toggle small{color:var(--muted);font-size:15px;margin-top:7px}.category-toggle b{font-size:28px;color:var(--orange);transition:.2s}.category-toggle[aria-expanded=true] b{transform:rotate(45deg);color:var(--green)}.category-panel{padding:0 24px 24px}.category-panel[hidden]{display:none}.service-items{display:grid;gap:12px;border-top:1px solid rgba(7,91,59,.16);padding-top:18px}.service-item{background:rgba(255,255,255,.86);border-radius:16px;padding:20px;border:1px solid rgba(7,91,59,.1)}.service-item h3{font-family:Manrope,sans-serif;font-size:19px;margin:0 0 6px}.service-item p{color:var(--muted);margin:0 0 16px}.service-item a{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;border-radius:11px;background:var(--green);color:#fff;text-decoration:none;font-weight:800;text-align:center;padding:10px 16px}
.courses{background:var(--green-dark);color:#fff}.citizenship-feature{padding:58px clamp(20px,7vw,110px);display:grid;grid-template-columns:1fr auto;gap:45px;align-items:center;background:linear-gradient(110deg,#075b3b,#043d29);border-bottom:1px solid rgba(255,255,255,.12)}.citizenship-feature>div{max-width:780px}.citizenship-feature .eyebrow{color:#ffb17e;margin-top:0}.citizenship-feature h2{font-family:Manrope,sans-serif;font-size:clamp(31px,4vw,50px);line-height:1.07;letter-spacing:-.04em;margin:0}.citizenship-feature p:last-child{font-size:18px;color:rgba(255,255,255,.76)}.citizenship-feature>a,.course-grid a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:12px 20px;border-radius:12px;background:var(--orange);color:#fff;text-decoration:none;font-weight:800;text-align:center}.course-catalog{padding:88px clamp(20px,7vw,110px)}.course-catalog .section-heading>p:last-child{color:rgba(255,255,255,.72)}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.course-grid article{min-height:255px;padding:26px;border-radius:19px;background:#fff;color:var(--ink);display:flex;flex-direction:column;border-top:5px solid var(--orange)}.course-grid article:nth-child(even){border-top-color:#64a887}.course-grid article>span{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#fff0e4;color:var(--orange);font-weight:900}.course-grid h3{font-family:Manrope,sans-serif;font-size:20px;line-height:1.2;margin:20px 0 8px}.course-grid p{color:var(--muted);margin:0 0 17px}.course-grid a{margin-top:auto;min-height:50px;background:var(--green)}.provider-note{margin:24px 0 0;color:rgba(255,255,255,.67);font-size:14px}
.appointments{background:linear-gradient(135deg,#fff0e4,#eaf6ef)}.appointment-card{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:55px;align-items:center;background:#fff;border-radius:28px;padding:clamp(30px,5vw,64px);box-shadow:var(--shadow)}.appointment-card .eyebrow{margin-top:0}.appointment-card p:last-child{font-size:18px;color:var(--muted)}.calendar-status{display:flex;flex-direction:column;padding:28px;border:2px dashed #a8c7b7;border-radius:20px;background:#eaf6ef}.calendar-status>span{font-size:32px;color:var(--orange)}.calendar-status strong{font-family:Manrope,sans-serif;font-size:21px;margin:14px 0 6px}.calendar-status small{color:var(--muted);font-size:15px}
@media(max-width:960px){.course-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.category-list,.citizenship-feature,.appointment-card{grid-template-columns:1fr}.course-grid{grid-template-columns:1fr}.citizenship-feature>a{width:100%}}@media(max-width:560px){.course-catalog{padding:70px 18px}.citizenship-feature{padding:46px 18px}.category-toggle{grid-template-columns:46px 1fr 24px;padding:20px;gap:13px}.category-toggle .icon{width:44px;height:44px}.category-toggle strong{font-size:20px}.category-panel{padding:0 15px 15px}}
.guidance-actions{display:grid;min-width:285px}.service-guidance .appointment-button{background:var(--orange)}
.service-points{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:12px 0 18px}.service-points li{padding:7px 11px;border-radius:999px;background:#f3f7f5;border:1px solid var(--line);color:var(--green-dark);font-size:14px;font-weight:700}
.appointment-inline{margin:0 0 32px;scroll-margin-top:100px}.appointment-inline .appointment-card{grid-template-columns:1.15fr .85fr;padding:30px 34px;border:1px solid var(--line);box-shadow:none}.appointment-inline .appointment-card h2{font-size:clamp(27px,3vw,38px)}
.location-contact{display:grid;gap:9px;margin-top:24px}.location-contact a{display:flex;justify-content:space-between;gap:20px;padding:13px 15px;border:1px solid rgba(255,255,255,.2);border-radius:11px;text-decoration:none;background:rgba(255,255,255,.06)}.location-contact small{color:rgba(255,255,255,.66)}.location-contact strong{word-break:break-word;text-align:right}
.experience{background:#fff}.experience-card{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center;padding:clamp(30px,5vw,60px);border-radius:28px;background:linear-gradient(125deg,#fff0e4,#eaf6ef);border:1px solid var(--line)}.experience-card .eyebrow{margin-top:0}.experience-card h2{font-family:Manrope,sans-serif;font-size:clamp(32px,4vw,50px);line-height:1.05;letter-spacing:-.04em;margin:0}.experience-card p{color:var(--muted);font-size:17px}.review-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 20px;border-radius:12px;background:var(--orange);color:#fff;text-decoration:none;font-weight:800}.social-panel{background:#fff;padding:28px;border-radius:20px;border:1px solid var(--line)}.social-panel>strong{font-family:Manrope,sans-serif;font-size:21px}.social-list{display:flex;flex-wrap:wrap;gap:9px}.social-list span{padding:10px 14px;border-radius:999px;background:var(--green);color:#fff;font-weight:800}
@media(max-width:850px){.experience-card{grid-template-columns:1fr}.appointment-inline .appointment-card{grid-template-columns:1fr}.guidance-actions{min-width:0}.location-contact a{flex-direction:column;gap:2px}.location-contact strong{text-align:left}}
.site-header{gap:20px}.brand{margin-right:0}.header-phone{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border-radius:12px;background:var(--orange);color:#fff;text-decoration:none;box-shadow:0 9px 20px rgba(243,107,22,.24);white-space:nowrap}.header-phone span{font-size:18px}.header-phone strong{font-size:14px}.site-header nav{margin-left:auto}
@media(max-width:850px){.site-header{gap:12px}.header-phone{margin-left:auto}}
@media(max-width:560px){.site-header{padding-inline:12px}.brand span{display:none}.brand img{width:42px;height:42px}.header-phone{min-height:42px;padding:0 11px}.header-phone strong{font-size:13px}}
.button.appointment-hero{background:var(--green);color:#fff;box-shadow:0 14px 30px rgba(7,91,59,.18)}
.about-strip{display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;max-width:1180px;margin:0 auto;padding:74px clamp(20px,5vw,70px);gap:58px;align-items:center}.about-portrait{position:relative}.about-portrait:before{content:"";position:absolute;inset:18px -18px -18px 18px;border-radius:24px;background:var(--orange);opacity:.14}.about-portrait img{position:relative;display:block;width:100%;height:330px;object-fit:cover;object-position:center 20%;border-radius:24px}.about-copy .eyebrow{margin-top:0}.about-copy h2,.resource-strip h2{font-family:Manrope,sans-serif;font-size:clamp(30px,4vw,48px);line-height:1.07;letter-spacing:-.04em;margin:0}.about-copy>p:last-of-type{font-size:18px;color:var(--muted);max-width:680px}.about-copy>a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:11px;background:var(--green);color:#fff;text-decoration:none;font-weight:800}
.resource-strip{padding:78px clamp(20px,7vw,110px);background:#f3f8f5;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.resource-strip>div:first-child{max-width:720px}.resource-strip .eyebrow{margin-top:0}.resource-strip>div:first-child>p:last-child{font-size:17px;color:var(--muted)}.resource-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:32px 0 22px}.resource-list a{display:flex;align-items:center;justify-content:center;min-height:68px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--green-dark);text-align:center;text-decoration:none;font-weight:800;transition:.2s}.resource-list a:hover{transform:translateY(-2px);border-color:var(--orange);box-shadow:0 12px 24px rgba(4,61,41,.08)}.resource-strip>small{display:block;max-width:900px;color:var(--muted);font-size:13px}
@media(max-width:850px){.about-strip{grid-template-columns:1fr;gap:34px}.about-portrait{max-width:520px}.resource-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.about-strip{padding:58px 18px}.about-portrait img{height:280px}.resource-strip{padding:62px 18px}.resource-list{grid-template-columns:1fr}.hero-actions .button{width:100%}}
.contact-modal[hidden]{display:none}.contact-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.contact-modal-backdrop{position:absolute;inset:0;background:rgba(3,32,22,.72);backdrop-filter:blur(7px)}.contact-modal-panel{position:relative;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:34px;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.3)}.contact-modal-panel>img{display:block;object-fit:contain}.contact-modal-panel .eyebrow{margin:16px 0 8px}.contact-modal-panel h2{font-family:Manrope,sans-serif;font-size:clamp(30px,5vw,44px);line-height:1.05;letter-spacing:-.04em;margin:0}.contact-modal-panel>p:not(.eyebrow){color:var(--muted);font-size:16px}.contact-modal-close{position:absolute;top:18px;right:18px;width:42px;height:42px;border:0;border-radius:50%;background:var(--green-soft);color:var(--green);font-size:28px;line-height:1;cursor:pointer}.contact-modal form{display:grid;gap:10px;margin-top:24px}.contact-modal label{font-size:14px;font-weight:800;color:var(--green-dark)}.contact-modal select{width:100%;min-height:56px;padding:0 44px 0 15px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:16px}.contact-modal form button{min-height:56px;border:0;border-radius:12px;background:var(--orange);color:#fff;font:inherit;font-weight:800;cursor:pointer}.contact-modal-direct{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.contact-modal-direct a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:52px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;color:var(--green);text-align:center;text-decoration:none;font-weight:800}.contact-modal-direct a:first-child{flex-direction:column;gap:0}.contact-modal-direct span{font-size:12px;color:var(--muted)}body.modal-open{overflow:hidden}@media(max-width:560px){.contact-modal{padding:10px}.contact-modal-panel{max-height:calc(100vh - 20px);padding:26px 20px;border-radius:20px}.contact-modal-direct{grid-template-columns:1fr}}
.hero-gallery{grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr}.hero-main-photo{grid-row:1/3}.hero-main-photo img{object-position:center 20%}.hero-service-card,.hero-brand-card{border-radius:24px;padding:clamp(22px,3vw,34px);display:flex;flex-direction:column;justify-content:center;overflow:hidden;box-shadow:var(--shadow)}.hero-service-card{background:linear-gradient(145deg,var(--green),var(--green-dark));color:#fff}.hero-card-kicker{font-size:11px;font-weight:800;letter-spacing:.16em;color:#ffc39d}.hero-service-card>strong{font-family:Manrope,sans-serif;font-size:clamp(22px,2.6vw,34px);line-height:1.05;margin:12px 0 20px}.hero-service-card>div{display:flex;flex-wrap:wrap;gap:7px}.hero-service-card>div span{padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.1);font-size:13px;font-weight:700}.hero-brand-card{position:relative;background:linear-gradient(145deg,#fff7ef,#fff);border:1px solid #f3d5bf;color:var(--green-dark)}.hero-brand-card:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-65px;top:-65px;background:rgba(243,107,22,.12)}.hero-brand-card img{width:76px;height:76px;object-fit:contain;margin-bottom:14px}.hero-brand-card>strong{font-family:Manrope,sans-serif;font-size:clamp(18px,2vw,25px);line-height:1.12;letter-spacing:.04em}.hero-brand-card>a{position:relative;z-index:1;margin-top:18px;color:var(--orange);font-weight:800;text-decoration:none}@media(max-width:560px){.hero-gallery{height:460px;grid-template-columns:1.15fr .85fr;grid-template-rows:1fr 1fr}.hero-service-card,.hero-brand-card{border-radius:15px;padding:16px}.hero-service-card>strong{font-size:19px;margin:8px 0 12px}.hero-service-card>div span{font-size:11px;padding:5px 7px}.hero-brand-card img{width:52px;height:52px;margin-bottom:8px}.hero-brand-card>strong{font-size:15px}.hero-brand-card>a{font-size:12px;margin-top:10px}}
.mobile-menu-toggle{display:none;width:42px;height:42px;border:0;border-radius:11px;background:var(--green);color:#fff;font-size:21px;cursor:pointer}@media(max-width:850px){.mobile-menu-toggle{display:grid;place-items:center}.site-header nav{display:none;position:absolute;top:calc(100% + 8px);left:12px;right:12px;margin:0;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(4,61,41,.2)}.site-header nav.mobile-open{display:grid;grid-template-columns:1fr 1fr;gap:6px}.site-header nav a{padding:13px 14px;border-radius:10px;background:var(--green-soft);color:var(--green-dark);font-size:15px}.site-header nav a:last-child{background:#fff0e4;color:#a7460d}}@media(max-width:560px){.site-header{gap:6px}.mobile-menu-toggle{width:40px;height:40px}.language{padding:7px 9px}.header-phone{padding:0 8px}.header-phone strong{font-size:12px}}
