:root { --ink:#173b3b; --ink-soft:#55706d; --cream:#f6f3ed; --paper:#fffdf9; --coral:#e86f51; --sun:#f4c95d; --mint:#dcece4; --line:#d9e2dc; --shadow:0 18px 50px rgba(23,59,59,.08); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:'DM Sans', sans-serif; font-size:16px; line-height:1.55; }
a { color:inherit; text-decoration:none; }
button, input, textarea { font:inherit; }
button { cursor:pointer; }
.site-header { position:sticky; top:0; z-index:10; display:flex; align-items:center; justify-content:space-between; gap:28px; padding:13px 5vw; background:rgba(255,253,249,.94); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.wordmark { display:flex; align-items:center; gap:8px; font-weight:700; letter-spacing:.08em; font-size:15px; white-space:nowrap; position:relative; }
.wordmark-mark { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:var(--coral); color:#fff; font-family:Fraunces,serif; font-size:20px; letter-spacing:0; }
.wordmark > span:not(.wordmark-mark) { display:block; font-weight:500; letter-spacing:0; font-size:10px; color:var(--coral); margin-top:1px; }
.nav { display:flex; gap:8px; align-items:center; font-size:13px; color:var(--ink-soft); }
.nav > a:not(.nav-cta), .nav-group > summary { display:block; padding:10px 12px; border-radius:8px; }
.nav > a:not(.nav-cta):hover, .nav-group > summary:hover { background:var(--mint); color:var(--ink); }
.nav a:hover { color:var(--coral); }
.nav-group { position:relative; }
.nav-group summary { list-style:none; cursor:pointer; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group summary:after { content:'⌄'; color:var(--coral); margin-left:5px; }
.nav-menu { position:absolute; top:27px; left:-17px; min-width:210px; display:grid; gap:0; padding:8px; background:var(--paper); border:1px solid var(--line); box-shadow:var(--shadow); }
.nav-menu a { padding:9px 10px; color:var(--ink); white-space:nowrap; }
.nav-menu a:hover { background:var(--mint); color:var(--ink); }
.nav-countries { grid-template-columns:1fr 1fr; min-width:300px; }
.nav-cta, .button { display:inline-flex; align-items:center; justify-content:center; border:0; border-radius:100px; padding:13px 19px; background:var(--ink); color:#fff; font-weight:600; font-size:13px; transition:transform .2s, background .2s; }
.button:hover, .nav-cta:hover { transform:translateY(-2px); background:var(--coral); }
.button.secondary { color:var(--ink); background:transparent; border:1px solid var(--ink); }
.button.secondary:hover { color:#fff; }
.menu-toggle { display:none; border:0; background:none; color:var(--ink); font-size:22px; }
.container { width:min(1160px,90vw); margin:auto; }
.eyebrow { text-transform:uppercase; letter-spacing:.14em; font-size:11px; color:var(--coral); font-weight:700; }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font-family:Fraunces, serif; font-weight:500; line-height:1.06; }
h1 { font-size:clamp(48px,7vw,92px); letter-spacing:-.04em; }
h2 { font-size:clamp(35px,5vw,62px); letter-spacing:-.035em; }
h3 { line-height:1.15; }
.hero { padding:100px 0 60px; position:relative; overflow:hidden; }
.hero:after { content:''; position:absolute; width:420px; height:420px; border-radius:50%; right:-160px; top:40px; background:var(--sun); opacity:.5; z-index:-1; }
.hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:end; }
.hero h1 { max-width:680px; margin:18px 0 24px; }
.hero h1 em { color:var(--coral); font-style:normal; }
.lede { max-width:520px; color:var(--ink-soft); font-size:19px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.hero-note { align-self:end; padding:26px; border-left:2px solid var(--coral); max-width:280px; color:var(--ink-soft); font-size:14px; }
.hero-note strong { display:block; color:var(--ink); font-size:18px; margin-bottom:7px; }
.section { padding:92px 0; }
.section.lined { border-top:1px solid var(--line); }
.section-head { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:34px; }
.section-head h2 { margin:10px 0 0; max-width:650px; }
.section-head p { max-width:350px; margin:0; color:var(--ink-soft); }
.map-shell { position:relative; border-radius:26px; background:#e4f0eb; padding:24px; min-height:440px; overflow:hidden; box-shadow:var(--shadow); }
.map-shell:before { content:''; position:absolute; inset:0; opacity:.5; background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px); background-size:42px 42px; }
.map { position:relative; z-index:1; display:block; width:100%; height:390px; }
.map-land { fill:#f8fbf6; stroke:#9fc9ba; stroke-width:1.4; transition:fill .2s, transform .2s; transform-box:fill-box; transform-origin:center; }
.map-land:hover, .map-land.active { fill:#f4c95d; transform:scale(1.03); }
.map-dot { fill:var(--coral); stroke:#fff; stroke-width:3; }
.map-label { font:600 12px 'DM Sans'; fill:var(--ink); }
.map-tooltip { position:absolute; z-index:2; right:28px; bottom:28px; background:var(--paper); width:260px; border-radius:16px; padding:20px; box-shadow:var(--shadow); }
.map-tooltip .flag { font-size:25px; }
.map-tooltip h3 { margin:8px 0 5px; font-size:22px; }
.map-tooltip p { color:var(--ink-soft); font-size:13px; margin-bottom:12px; }
.demo-tag { display:inline-block; color:#a35238; background:#fff0e7; border-radius:20px; padding:5px 9px; font-size:9px; font-weight:700; letter-spacing:.12em; }
.area-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--line); background:var(--line); }
.area { background:var(--paper); min-height:132px; padding:23px; transition:background .2s; }
.area:hover { background:var(--mint); }
.area-icon { font-size:24px; color:var(--coral); display:block; margin-bottom:14px; }
.area h3 { margin:0; font-size:15px; }
.country-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.country-card { min-height:245px; display:flex; flex-direction:column; padding:20px; border:1px solid var(--line); background:var(--paper); transition:transform .2s, box-shadow .2s; }
.country-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.country-card.featured { background:var(--ink); color:#fff; }
.country-card .flag { font-size:32px; }
.country-card h3 { margin:28px 0 6px; font-size:20px; }
.country-card p { color:var(--ink-soft); font-size:13px; margin-bottom:16px; }
.featured p { color:#bdd1c9; }
.text-link { margin-top:auto; color:var(--coral); font-size:13px; font-weight:700; }
.life-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.life-card { min-height:190px; padding:26px; border:1px solid var(--line); background:var(--paper); }
.life-card h3 { margin:18px 0 6px; font-size:19px; }
.life-card p { color:var(--ink-soft); font-size:14px; margin:0; }
.life-card .stage { font-size:11px; letter-spacing:.1em; font-weight:700; color:var(--coral); }
.cta-band { padding:68px; background:var(--coral); color:#fff; position:relative; overflow:hidden; }
.cta-band:after { content:'◌'; position:absolute; right:7%; top:-35px; font-size:230px; line-height:1; color:rgba(255,255,255,.16); }
.cta-band h2 { max-width:650px; margin-bottom:12px; }
.cta-band p { max-width:520px; color:#ffe8df; }
.cta-band .button { background:#fff; color:var(--ink); position:relative; z-index:1; }
.footer { border-top:1px solid var(--line); padding:44px 0; display:flex; justify-content:space-between; gap:30px; color:var(--ink-soft); font-size:13px; }
.footer-links { display:flex; flex-wrap:wrap; gap:18px; }
.footer .wordmark { color:var(--ink); }
.page-hero { padding:85px 0 55px; background:var(--mint); }
.page-hero h1 { margin:14px 0; font-size:clamp(48px,6vw,78px); }
.page-hero p { max-width:620px; font-size:18px; color:var(--ink-soft); }
.breadcrumb { color:var(--coral); font-size:12px; font-weight:700; }
.panel { background:var(--paper); border:1px solid var(--line); padding:28px; }
.city-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.city-card { min-height:215px; padding:22px; border:1px solid var(--line); background:var(--paper); display:flex; flex-direction:column; }
.city-card:first-child { background:var(--sun); }
.city-card h3 { margin:35px 0 8px; font-size:22px; }
.city-card p { color:var(--ink-soft); font-size:13px; }
.split { display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:start; }
.stats { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); }
.stat { padding:22px; background:var(--paper); }
.stat strong { display:block; font-family:Fraunces,serif; font-size:25px; margin-top:7px; }
.stat small { color:var(--ink-soft); font-size:11px; }
.feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.feature-card { padding:23px; min-height:170px; background:var(--paper); border:1px solid var(--line); }
.feature-card h3 { font-size:16px; margin:14px 0 7px; }
.feature-card p { color:var(--ink-soft); font-size:13px; margin:0; }
.story-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.story { padding:28px; background:var(--paper); border:1px solid var(--line); min-height:225px; }
.story summary { cursor:pointer; list-style:none; }
.story summary::-webkit-details-marker { display:none; }
.story summary:after { content:'Ler história ↓'; display:block; margin-top:20px; color:var(--coral); font-size:12px; font-weight:700; }
.story[open] summary:after { content:'Fechar história ↑'; }
.story-number { font-family:Fraunces,serif; color:var(--coral); font-size:26px; }
.story h3 { font-family:Fraunces,serif; font-size:26px; font-weight:500; margin:24px 0 12px; }
.story p { color:var(--ink-soft); }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.service-card { padding:20px; background:var(--paper); border:1px solid var(--line); min-height:165px; }
.service-card .area-icon { margin:0; }
.service-card h3 { font-size:16px; margin:12px 0 6px; }
.service-card p { font-size:13px; color:var(--ink-soft); margin:0; }
.profile { display:grid; grid-template-columns:160px 1fr; gap:28px; align-items:center; background:var(--ink); color:#fff; padding:36px; }
.profile-photo { width:140px; height:140px; border-radius:50%; object-fit:cover; border:4px solid var(--sun); }
.professional-hero { display:grid; grid-template-columns:280px 1fr; gap:56px; align-items:center; }
.professional-photo { width:100%; max-width:280px; aspect-ratio:4/5; object-fit:cover; }
.professional-cover { background:var(--mint); padding:80px 0; }
.professional-intro { display:grid; grid-template-columns:1fr 330px; gap:70px; align-items:center; }
.professional-intro h1 { max-width:760px; margin:18px 0; font-size:clamp(44px,6vw,78px); }
.professional-intro h2 { max-width:700px; font-family:Fraunces,serif; font-size:30px; }
.professional-intro p { max-width:620px; color:var(--ink-soft); font-size:18px; }
.professional-intro img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.professional-crp { font-size:12px !important; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.professional-story img, .professional-band img, .professional-service img { width:100%; max-height:520px; object-fit:cover; }
.professional-story li { margin:9px 0; color:var(--ink-soft); }
.professional-band { background:#f0ece4; }
.professional-about { background:var(--paper); }
.professional-gallery { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.professional-gallery img { width:100%; height:330px; object-fit:cover; }
.professional-service p { color:var(--ink-soft); }
.professional-cta { padding:90px 0; background:var(--coral); color:#fff; }
.professional-cta h2 { max-width:800px; font-size:clamp(35px,5vw,62px); }
.professional-cta p { max-width:620px; color:#ffe8df; font-size:18px; }
.professional-cta .button { background:#fff; color:var(--ink); }
.professional-footer { padding:44px 0; background:var(--ink); color:#dcece4; font-size:13px; }
.professional-footer small { display:block; max-width:780px; color:#a8c1b8; }
.editorial-card[tabindex] { cursor:pointer; }
.editorial-card[tabindex]:focus-visible { outline:3px solid var(--sun); outline-offset:4px; }
.editorial-action { display:block; padding:0 22px 20px; color:var(--coral); font-size:12px; font-weight:700; }
.avatar { width:140px; height:140px; border-radius:50%; display:grid; place-items:center; background:var(--sun); color:var(--ink); font-family:Fraunces,serif; font-size:55px; }
.profile h2 { font-size:38px; margin:13px 0 5px; }
.profile p { color:#c9ddd4; }
.profile .demo-tag { background:#f8d7bd; color:#70321f; }
.topic-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.topic { border:1px solid var(--line); background:var(--paper); padding:20px; min-height:110px; font-weight:600; }
.topic span { display:block; font-size:23px; color:var(--coral); margin-bottom:10px; }
.form-shell { max-width:720px; background:var(--paper); border:1px solid var(--line); padding:32px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
label { display:block; font-size:12px; font-weight:700; margin-bottom:7px; }
input, textarea { width:100%; padding:13px 14px; border:1px solid var(--line); background:#fff; color:var(--ink); outline-color:var(--coral); }
textarea { min-height:110px; resize:vertical; }
.field-wide { grid-column:1/-1; }
.empty-route { padding:100px 0; min-height:65vh; }
@media (max-width:900px) { .nav { display:none; position:absolute; top:70px; left:0; right:0; background:var(--cream); padding:18px 5vw; flex-direction:column; align-items:stretch; border-bottom:1px solid var(--line); } .nav.open { display:flex; } .nav-group summary { padding:10px 0; } .nav-menu,.nav-countries { position:static; min-width:0; box-shadow:none; border:0; background:transparent; padding:0 0 7px 12px; grid-template-columns:1fr; } .nav-menu a { padding:7px 0; } .menu-toggle { display:block; } .hero-grid,.split { grid-template-columns:1fr; } .hero { padding-top:70px; } .country-grid { grid-template-columns:repeat(3,1fr); } .city-grid { grid-template-columns:repeat(3,1fr); } .area-grid { grid-template-columns:repeat(3,1fr); } .service-grid { grid-template-columns:repeat(3,1fr); } .topic-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px) { .site-header { padding:15px 5vw; } h1 { font-size:52px; } h2 { font-size:40px; } .section { padding:65px 0; } .hero-note { margin-top:25px; } .map-shell { padding:10px; min-height:500px; } .map { height:310px; } .map-tooltip { right:18px; bottom:18px; left:18px; width:auto; } .area-grid,.country-grid,.city-grid,.life-grid,.story-grid,.service-grid,.topic-grid { grid-template-columns:1fr 1fr; } .section-head { display:block; } .section-head p { margin-top:16px; } .cta-band { padding:42px 25px; } .footer { display:block; } .footer-links { margin-top:20px; } .profile { grid-template-columns:1fr; } .form-grid { grid-template-columns:1fr; } .field-wide { grid-column:auto; } }

/* Editorial homepage direction */
.hero-home { min-height:min(760px, calc(100dvh - 60px)); height:clamp(560px, calc(100dvh - 60px), 760px); padding:0; display:flex; align-items:flex-end; color:#fff; background:#173b3b; isolation:isolate; }
.hero-image { position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg,rgba(8,39,39,.88) 0%,rgba(8,39,39,.53) 47%,rgba(8,39,39,.14) 100%),url('https://images.unsplash.com/photo-1516026672322-bc52d61a55d5?auto=format&fit=crop&w=2000&q=85') center/cover; }
.hero-image { transition:opacity .7s ease; }
.hero-slides { position:absolute; z-index:2; right:5vw; bottom:34px; display:flex; gap:8px; }
.hero-dot { width:34px; height:4px; padding:0; border:0; background:rgba(255,255,255,.45); }
.hero-dot.active { background:var(--sun); }
.hero-home:after { display:none; }
.hero-home .hero-grid { width:min(1160px,90vw); padding:120px 0 70px; grid-template-columns:1.2fr .8fr; }
.hero-home .hero-copy { max-width:730px; }
.hero-home h1 { font-size:clamp(60px,8vw,118px); line-height:.92; margin:20px 0 28px; }
.hero-home .lede { color:#e5eee9; max-width:600px; font-size:21px; }
.hero-home .eyebrow { color:#f4c95d; }
.hero-home .button.secondary { color:#fff; border-color:rgba(255,255,255,.7); }
.hero-home .button.secondary:hover { border-color:var(--coral); }
.hero-source { margin-top:38px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#b8d0c5; }
.hero-quote { align-self:end; margin-bottom:15px; padding:28px 0 0 28px; border-left:1px solid rgba(255,255,255,.5); max-width:300px; }
.hero-quote span { font-family:Fraunces,serif; color:#f4c95d; font-size:62px; line-height:.5; }
.hero-quote p { font-family:Fraunces,serif; font-size:23px; line-height:1.25; }
.hero-quote small { color:#f4c95d; font-size:10px; letter-spacing:.12em; }
.map-section { padding-top:74px; }
.map-shell { height:560px; padding:0; background:#dcece4; border-radius:4px; box-shadow:none; overflow:hidden; border:1px solid #c3d9cf; }
#world-map { height:100%; width:100%; background:#dcece4; }
.leaflet-container { font-family:'DM Sans',sans-serif; }
.leaflet-tile-pane { filter:saturate(.6) sepia(.08); }
.leaflet-control-zoom { border:0 !important; box-shadow:0 4px 18px rgba(23,59,59,.14) !important; }
.leaflet-control-zoom a { color:var(--ink) !important; border:0 !important; background:var(--paper) !important; }
.map-card { position:absolute; z-index:500; left:38px; bottom:34px; width:285px; padding:23px; background:rgba(255,253,249,.95); box-shadow:0 15px 35px rgba(23,59,59,.16); }
.map-card-kicker { display:block; color:var(--coral); font-size:10px; font-weight:700; letter-spacing:.14em; margin-bottom:13px; }
.map-card strong { display:block; font-family:Fraunces,serif; font-size:24px; line-height:1.1; font-weight:500; }
.map-card p { color:var(--ink-soft); font-size:13px; margin:13px 0 15px; }
.map-credit { font-size:10px; color:#78928c; }
.country-pin { display:grid; place-items:center; border:0; background:transparent; }
.country-pin span { display:grid; place-items:center; width:33px; height:33px; border-radius:50%; background:var(--paper); border:2px solid var(--coral); box-shadow:0 4px 12px rgba(23,59,59,.25); font-size:19px; transition:transform .2s; }
.country-pin:hover span { transform:scale(1.18); }
.leaflet-popup-content-wrapper { border-radius:0; box-shadow:0 12px 35px rgba(23,59,59,.18); }
.leaflet-popup-content { min-width:170px; margin:16px; }
.popup-flag { font-size:24px; }
.popup-country { color:var(--ink); font-family:Fraunces,serif; font-size:24px; margin-top:4px; }
.popup-city { color:var(--coral); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.popup-content p { color:var(--ink-soft); font-size:12px; margin:9px 0; }
.leaflet-popup-content a { color:var(--coral); font-size:12px; font-weight:700; }
.editorial-section { background:#f0ece4; }
.editorial-grid { display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:18px; align-items:start; }
.editorial-card { background:var(--paper); border:1px solid #e4ddd2; }
.editorial-card.is-link { display:block; color:inherit; transition:transform .2s, box-shadow .2s; }
.editorial-card.is-link:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.editorial-card:first-child { margin-top:38px; }
.editorial-image { height:230px; background-position:center; background-size:cover; position:relative; }
.editorial-card:first-child .editorial-image { height:300px; }
.editorial-image:after { content:''; position:absolute; inset:0; background:linear-gradient(transparent 45%,rgba(23,59,59,.55)); }
.editorial-image span { position:absolute; z-index:1; left:17px; bottom:15px; color:#fff; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.editorial-body { padding:22px; }
.editorial-body h3 { font-family:Fraunces,serif; font-size:25px; font-weight:500; line-height:1.12; margin:0 0 10px; }
.editorial-body p { color:var(--ink-soft); font-size:13px; margin-bottom:19px; }
.editorial-body small { color:var(--coral); font-size:10px; }
.source-note { margin:24px 0 0; color:var(--ink-soft); font-size:11px; }
.family-section { background:var(--paper); }
.family-feature { display:grid; grid-template-columns:.78fr 1.22fr; gap:70px; align-items:center; }
.family-art { min-height:470px; padding:30px; display:flex; flex-direction:column; justify-content:space-between; color:#fff; background:linear-gradient(180deg,rgba(23,59,59,.1),rgba(23,59,59,.8)),url('https://images.unsplash.com/photo-1472162072942-cd5147eb3902?auto=format&fit=crop&w=1000&q=80') center/cover; }
.family-art span { color:#f4c95d; font-size:11px; font-weight:700; letter-spacing:.14em; }
.family-art strong { max-width:310px; font-family:Fraunces,serif; font-size:34px; line-height:1.05; font-weight:500; }
.family-feature h2 { max-width:620px; }
.family-links { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); margin-top:32px; }
.family-links a { display:flex; justify-content:space-between; gap:15px; padding:14px 0; border-bottom:1px solid var(--line); color:var(--ink); font-size:13px; }
.family-links a:nth-child(odd) { margin-right:18px; }
.family-links span { color:var(--coral); }
.country-section { background:var(--cream); }
.country-section .country-grid { grid-template-columns:repeat(4,1fr); }
.country-section .country-card:nth-child(n+5) { display:none; }
.journey-section { background:#e6efea; }
.cta-band { margin-top:0; margin-bottom:80px; }
@media (max-width:900px) { .hero-home .hero-grid { grid-template-columns:1fr; } .hero-quote { display:none; } .editorial-grid { grid-template-columns:1fr 1fr; } .editorial-card:first-child { grid-row:span 2; margin-top:0; } .family-feature { grid-template-columns:1fr; gap:38px; } .country-section .country-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px) { .hero-home { min-height:650px; } .hero-home .hero-grid { padding:90px 0 50px; } .hero-home h1 { font-size:58px; } .hero-home .lede { font-size:18px; } .map-shell { height:520px; } .map-card { left:16px; right:16px; bottom:16px; width:auto; } .editorial-grid { grid-template-columns:1fr; } .editorial-card:first-child { grid-row:auto; } .editorial-card:first-child .editorial-image,.editorial-image { height:245px; } .family-art { min-height:380px; } .family-links { grid-template-columns:1fr; } .family-links a:nth-child(odd) { margin-right:0; } .country-section .country-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:600px) { .professional-hero { grid-template-columns:1fr; } .professional-photo { max-width:220px; } .hero-slides { right:5vw; bottom:22px; } }
@media (max-width:600px) { .professional-cover { padding:55px 0; } .professional-intro { grid-template-columns:1fr; gap:30px; } .professional-intro img { max-width:230px; } .professional-intro h2 { font-size:25px; } .professional-gallery { grid-template-columns:1fr 1fr; } .professional-gallery img { height:230px; } }
@media (max-width:600px) { .hero-home { min-height:0; height:max(560px, calc(100dvh - 60px)); } }