/* PAGODE DO MONACO 2.0 — MOBILE FIRST / TABLET / DESKTOP */
:root { --app-safe: env(safe-area-inset-bottom, 0px); --glass: rgba(15,12,11,.88); }
html { overflow-x:clip; } body { overflow-x:clip; }
img { height:auto; }
.brand { min-width:0; width:auto; flex:0 0 auto; }
.brand-logo { width:136px; height:66px; object-fit:contain; object-position:left center; filter:hue-rotate(25deg) saturate(1.15) drop-shadow(0 3px 12px rgba(241,119,24,.08)); }
.nav-inner { gap:20px; }
.nav-links a { white-space:nowrap; }
.brand:focus-visible,.tab-link:focus-visible { outline:2px solid #ffc875; outline-offset:2px; }
.hero-original-logo { width:clamp(180px,22vw,278px); max-height:none; margin:0 0 24px; filter:hue-rotate(25deg) saturate(1.15) drop-shadow(0 10px 24px #0007); }
.hero-copy { min-width:0; }
.hero-title { overflow-wrap:normal; max-width:800px; font-size:clamp(70px,7.9vw,122px); }
.hero .tag { margin-bottom:22px; }
.hero-side { min-width:0; }
.hero-poster { overflow:hidden; }
.hero-bg:after { background:linear-gradient(90deg,rgba(6,5,6,.97) 0%,rgba(6,5,6,.91) 34%,rgba(6,5,6,.37) 100%),linear-gradient(0deg,#0a0a0a,transparent 38%); }
.btn { min-height:48px; -webkit-tap-highlight-color:transparent; }
.card-link:focus-visible { outline:2px solid var(--gold); }
.form-card input,.form-card textarea,.form-card select { font-size:16px; }
.app-tabbar { display:none; }
.mobile-menu { overscroll-behavior:contain; }
.nav-links a.active { position:relative; }
.nav-links a.active:after { content:''; position:absolute; left:0; right:0; bottom:-14px; height:2px; background:var(--gold); border-radius:3px; }
@media(min-width:1101px) { .nav-cta { display:none; } .nav-links { gap:clamp(8px,1.2vw,20px); } .nav-links a { font-size:clamp(10px,.75vw,12px); } }
@media(max-width:1100px) {
 .nav-links, .nav-cta { display:none; }
 .nav { height:70px; }
 .brand-logo { height:59px; width:125px; }
 .menu-btn { display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:14px;font-size:25px; }
 .mobile-menu { display:none;position:fixed;top:auto;bottom:0;left:0;right:0;background:rgba(17,13,11,.985);border:1px solid #66442e;border-radius:24px 24px 0 0;box-shadow:0 -20px 70px #000b;max-height:min(76dvh,750px);overflow:auto;padding:20px 20px calc(99px + var(--app-safe)); }
 .mobile-menu.open { display:grid; grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px; }
 .mobile-menu a { display:flex;align-items:center;justify-content:flex-start;min-height:48px;font-size:13px;line-height:1.2;font-weight:700;padding:13px 12px;border:1px solid #443126;border-radius:12px;background:#231911;color:#f5e3c5; }
 .mobile-menu a.active { color:#f7c77c;border-color:#b97829; }
 .app-tabbar { display:flex;position:fixed;z-index:120;bottom:0;left:0;right:0;align-items:stretch;justify-content:space-around;min-height:calc(69px + var(--app-safe));padding:8px 8px calc(7px + var(--app-safe));background:rgba(13,11,10,.96);border-top:1px solid #67472b;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 -10px 30px rgba(0,0,0,.38); }
 .tab-link { flex:1; display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#cfc0aa;border:0;background:transparent;border-radius:12px;min-width:0;font-size:10px;font-weight:800;line-height:1.1; }
 .tab-link svg { width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round; }
 .tab-link.active { color:#ffb75a;background:rgba(255,171,69,.09); }
 .tab-link:active { background:#3a2919; }
 .floating-contact { bottom:calc(83px + var(--app-safe));right:14px;width:48px;height:48px;padding:12px;border-radius:50%;z-index:95;box-shadow:0 8px 27px #000a; }
 .floating-contact span { display:none; }
 .footer { padding-bottom:calc(92px + var(--app-safe)); }
 .hero { min-height:auto; }
 .hero-inner { gap:28px; }
 .hero-side { max-width:550px; }
 .section { padding-block:72px; }
}
@media(min-width:750px) and (max-width:1100px) {
 .wrap { width:min(calc(100% - 64px),var(--width)); }
 .hero-inner { display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;padding-block:72px; }
 .hero-side { max-width:none; }
 .hero-title { font-size:clamp(61px,7.2vw,85px); }
 .hero-description { font-size:15px; }
 .slider-viewport { height:min(56vw,440px); }
 .hero .actions .btn { padding-inline:16px;font-size:10px; }
 .grid3 { grid-template-columns:repeat(2,1fr); }
 .intro-grid { display:grid;grid-template-columns:1.05fr .95fr;gap:32px; }
 .foot-grid { grid-template-columns:repeat(2,1fr); }
 .title { font-size:clamp(56px,6vw,82px); }
}
@media(max-width:749px) {
 .topline { display:none; }
 .nav { height:66px; }
 .nav-inner { padding-inline:0; }
 .wrap { width:calc(100% - 36px); }
 .hero { align-items:flex-start;background:#0b0807; }
 .hero-inner { display:flex;flex-direction:column;padding-top:28px;padding-bottom:42px;gap:25px; }
 .hero-bg { background-position:55% center;filter:brightness(.4) saturate(1.2); }
 .hero-bg:after { background:linear-gradient(180deg,rgba(6,5,6,.85) 0%,rgba(8,7,6,.92) 52%,rgba(7,7,7,.96) 94%); }
 .hero-copy { text-align:center; }
 .hero .tag { font-size:9px;letter-spacing:.12em;max-width:100%;margin-bottom:18px; }
 .hero-original-logo { width:clamp(206px,61vw,278px);height:auto;max-height:180px;margin:0 auto 18px; }
 .hero-title { font-size:clamp(54px,12.5vw,86px);letter-spacing:-.015em;line-height:.91;margin-inline:auto;max-width:460px; }
 .hero-title .small-line { font-size:.39em;letter-spacing:.02em;margin-bottom:6px; }
 .hero-description { max-width:500px;margin:18px auto 0;font-size:14px;line-height:1.65;color:#e6d3be; }
 .hero .actions { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px; }
 .hero .actions .btn { width:100%;font-size:10px;line-height:1.2;min-height:52px;padding:11px 6px;letter-spacing:.02em; }
 .hero-minifacts { justify-content:center;gap:7px;font-size:8px;line-height:1.4;margin-top:16px;letter-spacing:.025em; }
 .hero-minifacts b { font-size:11px; }
 .hero-side { width:100%;max-width:460px; }
 .hero-poster { padding:6px;border-radius:16px;box-shadow:0 16px 45px #000a; }
 .hero-poster:before { border-radius:16px; }
 .slider-viewport { height:clamp(252px,86vw,435px);border-radius:11px; }
 .slider-item img { object-position:center 35%; }
 .poster-status { left:10px;right:10px;bottom:11px;max-width:none;padding:9px 11px;border-radius:10px; }
 .poster-status b { font-size:17px; }
 .poster-status small { font-size:9px;letter-spacing:.06em; }
 .scroll-tag { display:none; }
 .ticker-track { font-size:15px;padding-block:11px; }
 .section { padding-block:55px; }
 .section-head { margin-bottom:26px; }
 .title { font-size:clamp(49px,13.2vw,72px);line-height:.93; }
 .section-head p { font-size:14px; }
 .intro-grid,.split,.form-wrap,.spotify-grid,.page-grid,.edition,.event-detail-grid { display:grid;grid-template-columns:minmax(0,1fr); }
 .intro-grid { gap:27px; }
 .grid3,.grid2,.work-grid { display:grid;grid-template-columns:minmax(0,1fr);gap:12px; }
 .feature-row { padding:16px;border-radius:14px; }
 .feature-row b { font-size:21px; }
 .edition { min-height:auto; }
 .edition-content { padding:27px 22px; }
 .edition-content .display { font-size:clamp(48px,13vw,72px)!important; }
 .edition-photo { min-height:230px; }
 .card { padding:22px; }
 .card-icon { margin-bottom:10px; }
 .portrait-panel { min-height:360px; }
 .page-hero { min-height:230px; }
 .page-hero .wrap { padding:36px 0; }
 .page-hero h1 { font-size:clamp(53px,13vw,76px);overflow-wrap:anywhere; }
 .page-hero p { font-size:14px; }
 .quiet-panel { padding:24px; }
 .form-card { padding:21px; }
 .foot-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 17px; }
 .footer { padding-top:44px; }
 .footer .foot-col a { overflow-wrap:anywhere; }
 .footer .foot-grid>div:first-child,.footer .foot-grid>div:last-child { grid-column:span 2; }
 .foot-bottom { flex-direction:column; }
 .gallery-thumbs { grid-template-columns:repeat(2,1fr); }
 .event-placeholder { padding:26px;min-height:300px; }
 .event-placeholder h2 { font-size:clamp(52px,12vw,80px); }
 .btn { width:auto; }
 .actions { gap:10px; }
 .actions .btn { flex:1 1 100%; }
 .social-pills a { min-height:42px; }
 .sponsor-footer { overflow-wrap:anywhere; }
 .logo-strip { max-width:100%; }
}
@media(max-width:365px) {
 .wrap { width:calc(100% - 28px); }
 .hero-title { font-size:53px; }
 .hero .actions .btn { font-size:9px; }
 .tab-link { font-size:9px; }
 .tab-link svg { width:19px;height:19px; }
 .brand-logo { width:117px;height:54px; }
 .card { padding:18px; }
}
@media(prefers-reduced-motion:reduce) { .ticker-track { animation:none; } }

/* Final hero hierarchy */
.hero-title .line-orange{display:block}.hero-title{overflow-wrap:normal}.hero-title .small-line{white-space:normal}
@media(max-width:749px){.hero-title{font-size:clamp(59px,14vw,81px)}.hero-title .small-line{font-size:.34em}.hero-title .line-orange{font-size:1.06em}}
@media(max-width:365px){.hero-title{font-size:59px}}
/* App tab bar already exposes contact/commerce navigation: avoid covering CTAs. */
@media(max-width:1100px){.floating-contact{display:none}}
/* Long editorial headings must never exceed the narrow phone viewport. */
@media(max-width:749px){ .title{font-size:clamp(35px,10.3vw,60px);max-width:100%;} }
