/* APÓSTOLOS DOS ÚLTIMOS TEMPOS — v0.3.6 • Atelier Sacro
   Redesign de estrutura: landing + dashboard + linguagem visual do acervo.
   Não representa filiação institucional à Santa Sé.
   Respeita a identidade mariana e os ativos originais. */
:root{--at-navy:#0b243b;--at-deep:#071a2e;--at-ink:#19354a;--at-cream:#f8f5ee;--at-paper:#fffefa;--at-gold:#b28b50;--at-lightgold:#dfc79a;--at-muted:#646d70;--at-border:#e2d7c4;--at-serif:'Cormorant Garamond',Georgia,serif;--at-roman:'Cinzel',Georgia,serif;--at-sans:'Source Sans 3',Arial,sans-serif}
html{scroll-padding-top:120px}
body{background:var(--at-cream);font-family:var(--at-sans);font-size:16px;color:var(--at-ink)}
.wrap{width:min(1250px,calc(100% - 68px))}
.intro-kicker,.mini-kicker,.overline{font-family:var(--at-roman);font-size:10px;font-weight:600;letter-spacing:.16em}
.btn{border-radius:3px;font-size:13px;font-weight:700;min-height:50px;padding-inline:24px;box-shadow:none}
.btn-gold{background:linear-gradient(120deg,#e5c78e,#bc914e);border-color:#a67d3e;color:#0b273e;box-shadow:0 5px 17px #2c1e0921}
.btn-navy{background:#0c2a43;border-color:#0c2a43}
.btn-outline-dark{background:transparent;border-color:#b89d74;color:#0a283f}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #a57935;outline-offset:3px}
/* HEADER: institutional masthead and corrected compact mark */
.site-header{background:#071b2e;min-height:0;border-bottom:1px solid #b6996590;box-shadow:none}
.site-topbar{background:#061526;border-bottom:1px solid #bba57b2c}
.site-topbar>.wrap{height:29px;display:flex;align-items:center;justify-content:space-between;font:500 9px/1.2 var(--at-roman);letter-spacing:.16em;color:#d6c69f}
.site-nav{height:86px;min-height:0;gap:22px}
.brand{gap:12px;font:600 11px/1.46 var(--at-roman);letter-spacing:.04em;color:#f6ebd7}
.brand strong{font-weight:600}
.brand img{width:55px;height:55px;object-fit:contain;border:0;border-radius:0;box-shadow:none;background:transparent}
.topnav{gap:25px}
.topnav a{font:600 12px/1.2 var(--at-sans);letter-spacing:.035em;color:#e5ddce}
.topnav a:hover{color:#edcf95}
.nav-actions{gap:10px}.nav-actions .btn{min-height:41px;padding:9px 15px;font-size:12px}
.nav-actions .btn-outline{border-color:#9b895f;color:#fff7e4}
/* FULL EDITORIAL HOME, separate artwork from content instead of CSS-overlay patch */
.atelier-hero{background:#ede9dd;position:relative;isolation:isolate;overflow:hidden;border-bottom:0}
.atelier-hero::before,.atelier-hero::after{display:none!important}
.atelier-hero-canvas{position:absolute;inset:0 51.5% 0 0;overflow:hidden;background:linear-gradient(135deg,#263e50,#091e32);z-index:0}
.atelier-hero-arch{position:absolute;inset:26px 0 54px 36px;border:1px solid #dbba819e;border-radius:210px 210px 0 0;overflow:hidden;box-shadow:0 0 0 8px #091e3280,0 0 0 9px #d6b87865}
.atelier-hero-arch img{height:100%;width:100%;max-width:none;object-fit:cover;object-position:27% center;display:block;filter:contrast(1.04) saturate(.9)}
.atelier-hero-arch::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,#06172822 57%,#0617285a 100%)}
.atelier-hero-inscription{position:absolute;bottom:19px;left:36px;right:10px;text-align:center;color:#dfc895;font:500 10px var(--at-roman);letter-spacing:.18em}
.atelier-hero-inscription span{padding:0 14px}
.atelier-hero .hero-inner{min-height:650px;position:relative;z-index:1;display:grid;grid-template-columns:49% minmax(0,1fr);gap:0}
.atelier-hero .hero-blank{display:block;min-height:0}
.atelier-hero .hero-copy{padding:78px 0 83px 60px;margin:0!important;text-align:left;background:transparent!important;min-width:0;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.atelier-hero .overline{color:#7c653f;line-height:1.9;max-width:480px;margin:0 0 15px;font-size:10px;letter-spacing:.12em}
.atelier-diamond{color:var(--at-gold);padding:0 6px}
.atelier-hero .hero-copy h1{font-family:var(--at-serif);font-size:clamp(59px,5.8vw,91px);font-weight:600;line-height:.91;letter-spacing:-.044em;color:#102940;max-width:690px;margin:0 0 22px;animation:none}
.atelier-hero .hero-copy h1 em{font-style:italic;color:#a1783d;font-weight:500}
.atelier-hero-rule{display:flex;align-items:center;gap:12px;color:#af8e5c;width:180px;font-size:14px;margin:2px 0 18px}
.atelier-hero-rule span{height:1px;background:#c9b591;flex:1}
.atelier-hero .hero-copy>p{font-size:18px;line-height:1.65;color:#57606a;max-width:515px;margin:0 0 27px;animation:none}
.atelier-hero .hero-copy>p strong{color:#193c53;font-weight:700}
.atelier-hero .hero-actions{justify-content:flex-start;margin:0 0 24px;display:flex;gap:11px;animation:none}
.atelier-hero .hero-foot{display:flex;gap:20px;margin:0;align-items:center;flex-wrap:wrap;color:#615b55;font-size:12px}
.atelier-hero .hero-foot>span{display:flex;gap:7px;align-items:center}.atelier-hero .hero-foot svg{color:#9d7c44}
.atelier-hero-bottom{position:relative;z-index:2;background:#0b283e;color:#e1cb9f;border-top:1px solid #c6a36c;border-bottom:1px solid #c6a36c}
.atelier-hero-bottom .wrap{min-height:62px;display:flex;align-items:center;justify-content:center;gap:clamp(16px,3.2vw,60px);font:600 10px/1.5 var(--at-roman);letter-spacing:.14em}
.atelier-hero-bottom i{font-size:9px;font-style:normal;color:#b79153}
/* Manifesto appears as an editorial statement, not an undifferentiated ribbon */
.atelier-manifesto{display:grid;grid-template-columns:90px minmax(0,1fr) 56px;align-items:center;gap:28px;padding-top:64px;padding-bottom:64px;border-bottom:1px solid #d5c6ad}
.atelier-manifesto-mark{width:74px;height:74px;display:grid;place-items:center;font:500 49px var(--at-serif);color:#b89359;border:1px solid #c6aa77;border-radius:50%;background:#f7efe1;box-shadow:0 0 0 7px #f7f1e7,0 0 0 8px #c6aa7755}
.atelier-manifesto .intro-kicker{color:#9b7544}
.atelier-manifesto p{font:600 clamp(27px,3vw,41px)/1.18 var(--at-serif);letter-spacing:-.02em;color:#183349;margin:8px 0 11px;max-width:900px}
.atelier-manifesto p em{color:#986f3a}
.atelier-manifesto span{font-size:12px;color:#6c6c65}
.atelier-manifesto>a{width:48px;height:48px;border:1px solid #c5ae82;border-radius:50%;display:grid;place-items:center;color:#856131;transition:background .2s}
.atelier-manifesto>a:hover{background:#ead8b5}
/* Shared editorial heading, so pages have hierarchy without extra visual noise */
.atelier-section-head{display:grid;grid-template-columns:1.12fr .63fr;gap:60px;align-items:end;margin-bottom:38px}
.atelier-section-head .intro-kicker{color:#9c783e}
.atelier-section-head h2{max-width:660px;margin:14px 0 0;text-align:left;font:600 clamp(42px,4.6vw,66px)/.98 var(--at-serif);letter-spacing:-.035em;color:#132f43}
.atelier-section-head h2 em{color:#967042;font-weight:500}
.atelier-section-head>p{color:#647075;font-size:16px;line-height:1.8;margin:0 0 3px}
.atelier-pilars{padding:100px 0 108px;background:#f9f6ef}
.atelier-pilar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #c8b58e;border-bottom:1px solid #c8b58e}
.atelier-pilar{padding:30px 36px 36px;position:relative;min-height:310px}
.atelier-pilar+.atelier-pilar{border-left:1px solid #d9c9af}
.atelier-pilar-n{position:absolute;top:28px;right:31px;font:500 50px var(--at-serif);color:#c6b699;opacity:.48}
.atelier-pilar-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #cdb58a;color:#a77d3d;border-radius:50%;margin-bottom:23px}
.atelier-pilar h3{font:600 36px/1 var(--at-serif);color:#17364b;margin:0 0 12px}
.atelier-pilar p{font-size:15px;line-height:1.65;color:#6a7070;margin:0 0 20px}
.atelier-pilar a{color:#896334;font-size:13px;font-weight:700;display:inline-flex;gap:7px;align-items:center}
/* Dark archive shelf, with one distinctly larger lead card */
.atelier-formation{background:radial-gradient(ellipse at 20% 5%,#22465c,#081e31 70%);padding:100px 0 104px;border-block:3px double #af956e}
.atelier-head-inverse h2,.atelier-head-inverse h2 em{color:#fff4df}
.atelier-head-inverse h2 em{color:#e1c38b}
.atelier-head-inverse .intro-kicker{color:#d1b47e}
.atelier-head-inverse>p{color:#c3ccd0}
.atelier-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.atelier-feature-grid a{text-decoration:none}
.atelier-feature-primary{grid-column:span 3;min-height:258px;background:linear-gradient(110deg,#f7f0e3,#e9dac1);border:1px solid #d4b987;display:flex;justify-content:space-between;align-items:center;padding:36px 45px;overflow:hidden;position:relative}
.atelier-feature-primary::after{content:'';position:absolute;inset:8px;border:1px solid #a78a5980;pointer-events:none}
.atelier-feature-primary>div{position:relative;z-index:1;max-width:540px}
.atelier-feature-eyebrow{font:600 10px var(--at-roman);letter-spacing:.13em;color:#937344}
.atelier-feature-primary h3{font:600 clamp(34px,3.8vw,53px)/.97 var(--at-serif);letter-spacing:-.023em;color:#15344b;margin:13px 0}
.atelier-feature-primary p{font-size:15px;color:#636b67;line-height:1.6;max-width:490px}
.atelier-feature-more{display:inline-flex;align-items:center;gap:9px;color:#8f6838;font-weight:700;font-size:13px;margin-top:14px}
.atelier-feature-number{font:500 clamp(160px,25vw,340px)/.9 var(--at-serif);letter-spacing:-.09em;color:#b69358;opacity:.2;margin-right:25px;white-space:nowrap}
.atelier-feature-card{min-height:225px;background:#133148;border:1px solid #6c7d79aa;padding:29px 27px;position:relative;display:flex;flex-direction:column;transition:transform .25s,border-color .25s,background .25s}
.atelier-feature-card:hover{background:#1d4059;border-color:#d0ad72;transform:translateY(-3px)}
.atelier-card-index{position:absolute;right:25px;top:24px;color:#a3a9a3;font:500 13px var(--at-roman)}
.atelier-card-icon{color:#dfbf87;margin-bottom:17px}
.atelier-feature-card h3{color:#fff6e6;font:600 29px/1.04 var(--at-serif);margin:0 0 10px}
.atelier-feature-card p{color:#c3cdd0;font-size:13px;line-height:1.55;max-width:300px;margin:0}
.atelier-card-arrow{position:absolute;right:23px;bottom:24px;color:#d4b784}
.atelier-section-link{text-align:center;margin:38px 0 0}.atelier-section-link a{color:#ebd1a2;border-bottom:1px solid #bca06a;padding-bottom:9px;display:inline-flex;gap:11px;align-items:center;font-weight:600}
/* Marian feature */
.atelier-marian{background:linear-gradient(135deg,#eae2d4,#faf7f0 60%);padding:100px 0}
.atelier-marian-grid{display:grid;grid-template-columns:minmax(350px,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(48px,7vw,112px)}
.atelier-marian-art{min-height:615px;position:relative;background:radial-gradient(ellipse at 55% 50%,#e6d5b0,#a98f69 95%);border:1px solid #c2a16c;display:grid;place-items:end center;overflow:hidden;isolation:isolate}
.atelier-marian-art::before{content:'';position:absolute;inset:15px;border:1px solid #ffefd799;border-radius:230px 230px 0 0;z-index:1;pointer-events:none}
.atelier-marian-art img{height:580px;width:auto;max-width:90%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 7px 20px #32290d33)}
.atelier-marian-halo{position:absolute;top:9%;font-size:170px;line-height:1;color:#ead8aa44;z-index:0}
.atelier-marian-plaque{position:absolute;bottom:23px;left:23px;right:23px;background:#0b2a40ee;color:#f3e4cc;z-index:2;padding:20px 25px;text-align:center;border:1px solid #cbaa75}
.atelier-marian-plaque span{display:block;font:600 9px var(--at-roman);letter-spacing:.18em;color:#dfc08e;margin-bottom:7px}
.atelier-marian-plaque strong{font:600 24px var(--at-serif)}
.atelier-marian-copy .intro-kicker{color:#906f3b}
.atelier-marian-copy h2{font:600 clamp(43px,4.8vw,68px)/.97 var(--at-serif);letter-spacing:-.035em;color:#173549;text-align:left;margin:19px 0 26px}
.atelier-marian-copy h2 em{color:#a07b43}
.atelier-marian-copy>p{color:#646d70;font-size:16px;margin-bottom:25px}
.atelier-step{display:flex;gap:20px;padding:15px 0;border-top:1px solid #d6c9b5}
.atelier-step>span{font:600 15px var(--at-roman);color:#9e793e;min-width:29px}
.atelier-step strong{display:block;color:#223a4b;font-size:15px}
.atelier-step p{margin:3px 0 0;color:#6b726e;font-size:13px}
.atelier-marian-copy>.btn{margin-top:27px}
/* Price kept sober, no 'buy blessings' framing */
.atelier-price{background:#fbfaf6;padding:100px 0}
.atelier-price-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,420px);gap:clamp(50px,7vw,128px);align-items:center}
.atelier-price-story .intro-kicker{color:#957343}
.atelier-price-story h2{font:600 clamp(48px,5vw,69px)/.98 var(--at-serif);letter-spacing:-.03em;text-align:left;color:#183a4d;margin:15px 0 22px}
.atelier-price-story h2 em{color:#a07841}
.atelier-price-story>p{font-size:17px;color:#677072;max-width:560px}
.atelier-price-detail{display:flex;align-items:flex-start;gap:14px;padding:25px 0;border-top:1px solid #dfd4bf;margin-top:25px;font-size:13px;line-height:1.65;color:#5e696d;max-width:560px}
.atelier-price-detail svg{flex:none;color:#9f793f}
.atelier-price-story .transparency{margin:0;max-width:560px;font-size:12px}
.atelier-price-card{background:#fffdfa;border:1px solid #bca071;box-shadow:0 17px 44px #241e1015;position:relative}
.atelier-price-card::after{content:'';position:absolute;inset:8px;border:1px solid #e7d9bb;pointer-events:none}
.atelier-price-card-top{background:#0d3047;color:#f0d9b0;text-align:center;font:600 10px var(--at-roman);letter-spacing:.1em;padding:18px 20px}
.atelier-price-card-top span{margin-left:9px}
.atelier-price-body{padding:45px 38px 38px;text-align:center}
.atelier-price-body .intro-kicker{color:#967642}
.atelier-price-body .price-row{display:flex;align-items:baseline;justify-content:center;margin:18px 0 4px}
.atelier-price-body .price-row strong{font:600 73px/1 var(--at-serif);color:#163349;letter-spacing:-.045em}
.atelier-price-body .price-row span{font-size:15px;color:#72716c;margin-left:8px}
.atelier-price-body h3{font:600 28px var(--at-serif);margin:10px 0 2px}
.atelier-price-body p{font-size:14px;color:#667176;margin:3px auto 15px}
.atelier-price-include{display:flex;flex-direction:column;gap:11px;text-align:left;border-block:1px solid #e6d8c1;padding:21px 0;margin:25px 0}
.atelier-price-include span{display:flex;align-items:center;gap:11px;color:#364b57;font-size:14px}
.atelier-price-include svg{color:#a77f45}
.atelier-price-body .btn.full{width:100%}
.atelier-price-body small{display:block;font-size:11px;color:#73736e;margin-top:15px}
.atelier-invite{background:#0c263d;padding:95px 0;border-block:3px double #ad9163;text-align:center;color:#efe4d2}
.atelier-invite>.wrap{max-width:890px}
.atelier-invite-symbol{display:grid;place-items:center;color:#e3c18b;border:1px solid #bb9967;width:58px;height:58px;border-radius:50%;margin:0 auto 26px}
.atelier-invite .intro-kicker{color:#e5c68e}
.atelier-invite h2{font:600 clamp(44px,5.1vw,68px)/.98 var(--at-serif);color:#fff8ea;letter-spacing:-.03em;margin:14px auto 20px}
.atelier-invite h2 em{color:#dfbf87}
.atelier-invite p{color:#c1ccd0;font-size:16px;max-width:650px;margin:0 auto 30px}
.atelier-invite .btn-outline-light{border-color:#bda16b;color:#f5e8d1;background:transparent}
.atelier-footer{background:#061727;padding:62px 0 30px;border-top:0}
.atelier-footer-main{display:grid;grid-template-columns:2fr 1fr 1fr .7fr;gap:30px;align-items:start}
.atelier-footer-main>div:first-child p{font:italic 22px var(--at-serif);color:#d4b992;margin:13px 0 0}
.atelier-footer-main>div:not(:first-child):not(:last-child){display:flex;flex-direction:column;gap:11px}
.atelier-footer-main>div>strong{color:#bfa477;font:600 10px var(--at-roman);letter-spacing:.1em;margin-bottom:8px}
.atelier-footer-main>div>a{color:#d7dcd8;font-size:13px}
.atelier-footer-main>div>a:hover{color:#efcc94}
.atelier-footer-seal{display:flex;flex-direction:column;align-items:center;color:#d2ad70;font-size:41px;line-height:1}
.atelier-footer-seal span{font:600 10px/1.8 var(--at-roman);text-align:center;letter-spacing:.11em;margin-top:10px}
.atelier-footer-bottom{border-top:1px solid #6e654f77;margin-top:52px;padding-top:21px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#b7b5ab}
/* DASHBOARD: deliberately rebuilt navigation and page layout */
.is-app,.app-shell{background:#f5f2ea}
.app-shell{min-height:100vh;display:grid;grid-template-columns:268px minmax(0,1fr)}
.sidebar{background:#081e32;box-shadow:none;border-right:1px solid #a9844e75;position:sticky;top:0;height:100vh;overflow-y:auto;align-self:start;display:flex;flex-direction:column;z-index:30}
.side-logo{padding:22px 21px 17px;border-bottom:1px solid #d6b98337}
.side-logo .brand img{width:54px;height:54px;border:0;box-shadow:none}
.side-logo .brand{font-size:10px}
.atelier-side-subline{font:500 8px var(--at-roman);letter-spacing:.1em;color:#d0b78b;display:block;margin:12px 0 0}
.side-label{display:none}
.sidenav{padding:12px 11px 22px;flex:1}
.atelier-side-group{margin:7px 0 19px}
.atelier-side-group-name{font:600 9px var(--at-roman);letter-spacing:.13em;color:#b69d75;padding:12px 15px 9px}
.side-link{min-height:40px;border-radius:3px;color:#c5d2d9;font-size:12px;display:flex;align-items:center;padding:8px 12px;gap:12px;font-weight:500}
.side-link .icon{color:#d0ad74;flex:none}
.side-link.active{background:#b58f57;color:#071d30;box-shadow:inset 2px 0 #f9e6c1}
.side-link.active .icon{color:#071e32}
.atelier-nav-active{font-size:10px;margin-left:auto;color:#193146}
.side-footer{display:flex;flex-direction:column;align-items:center;gap:8px;padding:21px 16px 26px;background:#061727;border-top:1px solid #9276476b;flex:none}
.atelier-side-footer-cross{font-size:26px;color:#c49d62}
.side-footer strong{font:italic 19px/1.2 var(--at-serif);font-weight:600;text-align:center;color:#f2dfc0}
.side-footer>span:last-child{font:600 9px var(--at-roman);color:#bea379}
.app-main{min-width:0;background:radial-gradient(ellipse at 80% 0,#fffdfa,#f6f3ec 67%)}
.app-header{background:#fffefa;height:74px;border-bottom:1px solid #d7c5a9;padding:0 clamp(20px,3vw,45px)}
.breadcrumb{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#354b5e}
.breadcrumb a{color:#8b6c3c}
.breadcrumb>span{opacity:.35}
.atelier-header-verse{font:600 9px var(--at-roman);letter-spacing:.08em;color:#97774b}
.demo-tag{font-size:10px;background:#f3eddf;border-color:#d7c6a8;color:#7c6141}
.avatar{width:39px;height:39px;border-radius:50%;background:#f4e6c9;color:#233d55;border-color:#ccb58b}
.page-content{max-width:1540px;width:100%;padding:40px clamp(22px,3vw,46px) 92px}
.atelier-dashboard-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}
.atelier-dashboard-intro .intro-kicker{color:#9e783e}
.atelier-dashboard-intro h1{font:600 clamp(38px,3.3vw,55px)/1.02 var(--at-serif);letter-spacing:-.025em;color:#122f44;margin:8px 0 4px}
.atelier-dashboard-intro p{font-size:15px;color:#657278;margin:0}
.atelier-dashboard-intro .today-tag{white-space:nowrap;border-bottom:1px solid #d5c3a4;padding:0 0 8px;display:flex;gap:8px;align-items:center;font-size:12px}
.atelier-dashboard-hero{min-height:327px;height:auto;border-radius:2px;background:linear-gradient(110deg,#081e32,#15374f 55%,#173a53);padding:0;border:1px solid #a88b5c;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(255px,.75fr);overflow:hidden;box-shadow:0 12px 34px #14233216;position:relative}
.atelier-dashboard-hero::before{inset:11px;border:1px solid #cbb18556;z-index:3}
.atelier-dashboard-hero::after{display:none}
.atelier-dashboard-hero-copy{padding:40px 44px;min-width:0;max-width:none!important;position:relative;z-index:4}
.atelier-dashboard-hero .mini-kicker{color:#dbba83;font-size:10px}
.atelier-dashboard-hero h2{font:600 clamp(45px,4.5vw,67px)/.94 var(--at-serif);letter-spacing:-.04em;color:#fff6e7;margin:19px 0 14px}
.atelier-dashboard-hero p{font:italic 24px/1.2 var(--at-serif);color:#ead4af;margin:0 0 26px}
.atelier-dashboard-hero p span{font-size:14px;white-space:nowrap}
.atelier-progress-label{display:flex;justify-content:space-between;max-width:440px;align-items:center;margin-bottom:9px;font:600 10px var(--at-roman);color:#dbc29d;letter-spacing:.08em}
.atelier-progress-label strong{color:#fff}
.atelier-dashboard-hero .progress{max-width:440px;margin:0 0 9px;height:6px;background:#fff6de33;border-radius:6px;overflow:hidden}
.atelier-dashboard-hero .progress i{height:100%;background:#d9bc83}
.atelier-dashboard-hero small{display:block;color:#d3d7d6;font-size:12px}
.atelier-dashboard-hero-link{display:inline-flex;align-items:center;gap:9px;color:#f5d5a0;border-bottom:1px solid #bc9964;padding:10px 0 4px;font-weight:700;font-size:13px;margin-top:13px}
.atelier-dashboard-portrait{position:relative;overflow:hidden;display:grid;place-items:end center;background:radial-gradient(circle at 56% 42%,#e0c48f33,#10273d00 66%);border-left:1px solid #c5a66b51}
.atelier-dashboard-portrait::before{content:'';position:absolute;inset:20px 24px 22px;border:1px solid #b9a47670;border-radius:180px 180px 0 0}
.atelier-dashboard-portrait img{position:relative!important;right:auto!important;top:auto!important;height:330px!important;width:auto!important;max-width:94%!important;object-fit:contain;opacity:1!important;filter:drop-shadow(0 12px 24px #0005)}
.atelier-dashboard-portrait span{position:absolute;bottom:20px;left:12px;right:12px;text-align:center;color:#f6dfa9;font:600 8px var(--at-roman);letter-spacing:.17em;z-index:4}
.atelier-dashboard-shortcuts{margin:19px 0 29px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.atelier-dashboard-shortcuts a{min-height:84px;background:#fffcf6;border:1px solid #dfd2bb;display:flex;align-items:center;gap:13px;padding:18px 19px;color:#a37a41;transition:border-color .2s,transform .2s}
.atelier-dashboard-shortcuts a:hover{border-color:#ac864d;transform:translateY(-2px)}
.atelier-dashboard-shortcuts a>svg:first-child{flex:none}
.atelier-dashboard-shortcuts a>span{flex:1;min-width:0}
.atelier-dashboard-shortcuts strong{color:#243d50;display:block;font-weight:700;font-size:14px}
.atelier-dashboard-shortcuts small{display:block;font-size:11px;color:#778084;margin-top:3px}
.atelier-dashboard-shortcuts a>svg:last-child{width:15px;flex:none;color:#ad8c5d}
.atelier-dashboard-columns{grid-template-columns:minmax(0,1.44fr) minmax(310px,.8fr);gap:17px;margin-top:0}
.panel{border-radius:2px;border:1px solid #e2d6c2;background:#fffefa;box-shadow:0 5px 20px #32241108}
.tasks-panel{padding:29px 27px 20px}
.tasks-panel .panel-title{align-items:end;gap:15px;margin-bottom:9px}
.tasks-panel .panel-title h2{font:600 34px var(--at-serif);letter-spacing:-.02em;color:#19394b;margin:4px 0 0}
.tasks-panel .section-meta{font-size:9px;letter-spacing:.04em;color:#856b47;white-space:nowrap}
.task-row{min-height:71px;display:flex;gap:11px;align-items:center;border-bottom:1px solid #e7e0d3}
.task-row .task-label{flex:none}
.atelier-task-number{color:#a48d6c;font:500 11px var(--at-roman)}
.task-main{display:flex;gap:12px;align-items:center;flex:1;min-width:0}
.task-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid #d8c7a6;border-radius:50%;color:#a27a3d;flex:none;background:#faf5e8}
.task-text{min-width:0;flex:1}
.task-text strong{font-weight:700;font-size:14px;color:#233c4c}
.task-text small{font-size:12px;color:#6c797d}
.task-main>.icon:last-child{color:#ad8e5d}
.task-done .task-text strong{color:#72837a}
.panel-footnote{color:#687376;font-size:12px;margin-top:20px}
.right-panels{display:flex;flex-direction:column;gap:17px}
.short-panel{padding:28px}
.short-panel .intro-kicker{color:#947243}
.short-panel .panel-title h2{font:600 31px var(--at-serif);color:#19364a;margin:4px 0 15px}
.commitment{padding:14px 0;border-bottom:1px solid #e7e0d4;gap:13px}
.commitment>.icon{color:#a67e45;flex:none}
.commitment strong{font-size:13px;color:#294658;font-weight:700}
.commitment span{font-size:12px;color:#69777d}
.short-panel .text-link{font-size:12px;margin-top:20px}
.virtue-panel{background:#f1e6d2;border:1px solid #cfb789;border-top:3px solid #a78751;padding:25px;display:flex;gap:17px;color:#1e3e4e;text-decoration:none}
.virtue-panel .subtle-cross{font-size:40px;color:#ac8545}
.virtue-panel small{font:600 10px var(--at-roman);color:#937244;letter-spacing:.08em}
.virtue-panel h3{font:600 34px var(--at-serif);color:#193749;margin:5px 0}
.virtue-panel p{color:#64706d;font-size:13px;line-height:1.45;margin:0}
.virtue-panel span{display:inline-flex;align-items:center;gap:5px;color:#876335;font-size:12px;font-weight:700;margin-top:12px}
.atelier-dashboard-library{margin-top:48px}
.atelier-dashboard-library-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:22px}
.atelier-dashboard-library-head .intro-kicker{color:#927142}
.atelier-dashboard-library-head h2{font:600 39px/1 var(--at-serif);margin:8px 0 0;color:#19394e}
.atelier-dashboard-library-head>a{display:inline-flex;gap:7px;align-items:center;font-size:13px;font-weight:700;color:#8d6c3d;white-space:nowrap}
.atelier-dashboard-library .tiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.atelier-dashboard-library .tile{border:1px solid #e1d3ba;border-top:2px solid #b49560;border-radius:2px;min-height:130px;padding:20px;background:#fffcf6;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;position:relative;gap:11px}
.atelier-dashboard-library .tile>.icon:first-of-type{color:#ab834a}
.atelier-dashboard-library .tile strong{font:600 24px/1 var(--at-serif);color:#223e51;flex:none}
.atelier-dashboard-library .tile>.icon:last-child{position:absolute;right:20px;bottom:20px;color:#a88552}
.atelier-tile-number{position:absolute;right:21px;top:18px;color:#b9b0a0;font:600 12px var(--at-roman)}
/* Every subpage inherits the new art direction without modifying content or actions */
.page-heading{margin:0 0 26px;padding-bottom:15px}
.page-heading .intro-kicker{color:#987547}
.page-heading h1{font:600 clamp(38px,3.7vw,58px)/1.02 var(--at-serif);letter-spacing:-.027em;margin:11px 0 8px;color:#15364c}
.page-heading p{color:#68757b;font-size:15px;max-width:830px}
.atelier-page-heading-ornament{display:flex;align-items:center;gap:8px;color:#af8d58;width:100px;margin-top:23px;font-size:10px}
.atelier-page-heading-ornament i{height:1px;background:#d2c2a5;flex:1}
.section-banner{border:1px solid #cfba97;border-radius:2px;background:linear-gradient(110deg,#fdf8ed,#eee0c8);padding:34px 36px;min-height:175px}
.section-banner h2{font:600 clamp(30px,3vw,41px)/1 var(--at-serif);color:#193a50;margin:9px 0}
.section-banner p{font-size:14px;color:#6b7371}
.section-banner .mini-kicker{font-size:9px;color:#987744}
.section-banner.banner-dark{background:#0f3048}
.section-banner.banner-dark h2{color:#fff7e9}
.section-banner.banner-dark p{color:#d7dfdb}
.section-banner .banner-symbol{color:#b88e54;opacity:.48}
.panel.padded{padding:31px}
.panel h2{font-family:var(--at-serif);font-weight:600}
.formation-grid,.library-grid,.quick-faq-grid{gap:16px}
.formation-card,.module-card,.info-tile,.quick-faq-grid>article{border-radius:2px;box-shadow:0 4px 18px #1c190a0a}
.module-card:hover,.formation-card:hover{transform:translateY(-2px);border-color:#b69560}
.welcome-card,.auth-card{border-radius:var(--ap-radius-lg,20px)}
/* Motion: only small deliberate feedback; honor reduced motion */
@media (prefers-reduced-motion:no-preference){.atelier-feature-card,.atelier-pilar a,.atelier-dashboard-shortcuts a{transition:transform .2s ease,border-color .2s ease,background .2s ease}}
@media (max-width:1150px){
 .site-nav{gap:12px}.topnav{gap:14px}.topnav a{font-size:11px}.nav-actions .btn{padding-inline:12px}
 .atelier-hero .hero-inner{grid-template-columns:46% 54%;min-height:605px}
 .atelier-hero-canvas{inset-right:54%}
 .atelier-hero .hero-copy{padding-left:38px}
 .atelier-hero .hero-copy h1{font-size:clamp(48px,5.5vw,68px)}
 .atelier-marian-grid{gap:50px}
 .app-shell{grid-template-columns:242px minmax(0,1fr)}
 .atelier-dashboard-hero{grid-template-columns:minmax(0,1.2fr) 230px}
 .atelier-dashboard-hero-copy{padding:34px 31px}
 .atelier-dashboard-columns{grid-template-columns:minmax(0,1.1fr) minmax(280px,.85fr)}
}
@media (max-width:950px){
 .wrap{width:min(100% - 38px,1250px)}
 .site-topbar>.wrap{justify-content:center}.site-topbar>.wrap>span:first-child{display:none}
 .topnav{display:none}.nav-actions{margin-left:auto}.mobile-menu-btn{display:flex}
 .mobile-topnav{background:#0b293f;border-top:1px solid #a78c614c}.mobile-topnav.show{display:flex;flex-direction:column}
 .atelier-hero .hero-inner{grid-template-columns:41% minmax(0,1fr);min-height:575px}
 .atelier-hero-canvas{inset:0 57% 0 0}
 .atelier-hero-arch{left:19px}
 .atelier-hero .hero-copy{padding-left:26px;padding-right:0}
 .atelier-hero .hero-copy h1{font-size:clamp(47px,6vw,60px)}
 .atelier-hero .hero-copy>p{font-size:16px}
 .atelier-hero .hero-foot{gap:7px 14px}
 .atelier-hero-bottom .wrap{gap:18px}
 .atelier-section-head{grid-template-columns:1fr;gap:17px}
 .atelier-feature-card{padding:24px 19px}
 .atelier-marian-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px}
 .atelier-marian-art{min-height:530px}.atelier-marian-art img{height:500px}
 .atelier-price-grid{gap:30px;grid-template-columns:minmax(0,1fr) 350px}
 /* existing mobile sidebar CSS uses fixed panel; keep it working */
 .app-shell{display:block}
 .sidebar{position:fixed;top:0;left:0;bottom:0;height:100dvh;width:min(310px,84vw);transform:translateX(-102%);transition:transform .2s;z-index:90}
 .sidebar.open{transform:translateX(0)}
 .app-main{width:100%}.sidebar-toggle{display:flex}
 .atelier-dashboard-columns{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr)}
}
@media (max-width:720px){
 .site-header{min-height:0}.site-nav{height:70px;min-height:70px}.site-topbar>.wrap{height:26px}
 .site-nav .brand{font-size:9px}.site-nav .brand img{width:46px;height:46px}
 .nav-actions .nav-enter{display:none}.nav-actions .nav-start{display:none}
 .atelier-hero{background:#f4eee2}
 .atelier-hero-canvas{inset:0 0 auto;height:410px;background:#0a2b42}
 .atelier-hero-arch{inset:17px 15px 32px;border-radius:200px 200px 0 0}
 .atelier-hero-arch img{object-position:27% 43%}
 .atelier-hero-inscription{left:8px;right:8px;bottom:9px;font-size:8px}
 .atelier-hero .hero-inner{display:block;min-height:0;width:100%}
 .atelier-hero .hero-blank{height:407px}
 .atelier-hero .hero-copy{padding:42px 25px 46px;margin:0!important;display:block;text-align:center;background:#f4eee2!important;max-width:none}
 .atelier-hero .overline{font-size:9px;margin:0 auto 16px}
 .atelier-hero .hero-copy h1{font-size:clamp(46px,10.8vw,66px);line-height:.97;max-width:580px;margin:0 auto 20px}
 .atelier-hero-rule{margin:2px auto 16px}
 .atelier-hero .hero-copy>p{font-size:16px;margin:0 auto 23px;max-width:520px}
 .atelier-hero .hero-actions{justify-content:center;gap:9px;flex-wrap:wrap}
 .atelier-hero .hero-foot{justify-content:center;gap:5px 16px}
 .atelier-hero-bottom .wrap{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:7px;padding:19px 0;font-size:8px}
 .atelier-hero-bottom i{display:none}
 .atelier-manifesto{grid-template-columns:48px minmax(0,1fr);gap:18px;padding-top:48px;padding-bottom:51px}
 .atelier-manifesto-mark{width:40px;height:40px;font-size:31px;box-shadow:0 0 0 4px #f7f1e7,0 0 0 5px #c6aa7755}
 .atelier-manifesto p{font-size:29px}.atelier-manifesto>a{display:none}
 .atelier-pilars,.atelier-formation,.atelier-marian,.atelier-price{padding:74px 0}
 .atelier-section-head h2{font-size:clamp(43px,9vw,55px)}
 .atelier-pilar-grid{display:block}.atelier-pilar{min-height:0;padding:25px 12px 29px}.atelier-pilar+.atelier-pilar{border-left:0;border-top:1px solid #d9c9af}
 .atelier-pilar h3{font-size:33px}.atelier-pilar-n{font-size:44px;top:20px;right:9px}
 .atelier-feature-grid{grid-template-columns:1fr 1fr;gap:10px}
 .atelier-feature-primary{grid-column:span 2;padding:34px 27px;min-height:248px}
 .atelier-feature-primary h3{font-size:42px}.atelier-feature-number{position:absolute;right:0;bottom:0;font-size:190px;opacity:.09;margin:0}
 .atelier-feature-card{min-height:230px;padding:21px 19px}
 .atelier-feature-card h3{font-size:26px}
 .atelier-marian-grid{display:flex;flex-direction:column;gap:34px}
 .atelier-marian-art{width:100%;min-height:525px}.atelier-marian-art img{height:505px}
 .atelier-marian-copy h2{font-size:49px}
 .atelier-price-grid{display:flex;flex-direction:column;align-items:stretch;gap:34px}
 .atelier-price-story h2{font-size:50px}.atelier-price-card{width:min(100%,430px);margin:auto}
 .atelier-footer-main{grid-template-columns:1fr 1fr;gap:32px}.atelier-footer-main>div:first-child{grid-column:span 2}.atelier-footer-seal{display:none}
 .atelier-footer-bottom{display:block}.atelier-footer-bottom span{display:block;margin:8px 0}
 .app-header{height:65px;padding:0 15px}.atelier-header-verse{display:none}
 .page-content{padding:22px 14px 100px}
 .atelier-dashboard-intro{display:block;margin-bottom:18px}
 .atelier-dashboard-intro h1{font-size:37px}.atelier-dashboard-intro .today-tag{display:inline-flex;margin-top:11px;font-size:11px}
 .atelier-dashboard-hero{display:grid;grid-template-columns:1fr;min-height:0}
 .atelier-dashboard-hero-copy{padding:29px 25px 22px}
 .atelier-dashboard-hero h2{font-size:48px;margin:14px 0 7px}.atelier-dashboard-hero p{font-size:20px;margin-bottom:20px}
 .atelier-dashboard-portrait{height:195px;border-left:0;border-top:1px solid #b59b6a66;align-items:end;overflow:hidden}
 .atelier-dashboard-portrait img{height:260px!important;margin-bottom:-70px}
 .atelier-dashboard-portrait::before{inset:8px 30% 0}
 .atelier-dashboard-portrait span{bottom:12px;font-size:8px}
 .atelier-dashboard-shortcuts{grid-template-columns:1fr;gap:8px;margin:13px 0 22px}
 .atelier-dashboard-shortcuts a{min-height:68px;padding:12px 17px}
 .atelier-dashboard-columns{grid-template-columns:1fr;gap:13px}
 .tasks-panel,.short-panel{padding:23px 19px}
 .tasks-panel .panel-title h2{font-size:29px}.tasks-panel .section-meta{font-size:9px}
 .task-row{gap:8px}.atelier-task-number{display:none}
 .task-text strong{font-size:13px}.task-main{gap:8px}.task-icon{width:34px;height:34px}
 .right-panels{gap:13px}
 .atelier-dashboard-library{margin-top:35px}
 .atelier-dashboard-library-head{display:block}.atelier-dashboard-library-head h2{font-size:36px}.atelier-dashboard-library-head>a{margin-top:13px}
 .atelier-dashboard-library .tiles-grid{grid-template-columns:1fr 1fr;gap:10px}
 .atelier-dashboard-library .tile{min-height:124px;padding:17px}.atelier-dashboard-library .tile strong{font-size:20px}.atelier-dashboard-library .tile>.icon:last-child{right:14px;bottom:13px}
 .page-heading h1{font-size:40px}.section-banner{padding:24px 21px;min-height:0}
 .section-banner h2{font-size:31px}.section-banner .banner-symbol{display:none}
}
@media(max-width:400px){
 .wrap{width:calc(100% - 28px)}
 .atelier-hero-canvas{height:365px}.atelier-hero .hero-blank{height:363px}
 .atelier-hero .hero-copy{padding:36px 14px 44px}
 .atelier-hero .hero-copy h1{font-size:43px}
 .atelier-hero .hero-actions{flex-direction:column;align-items:stretch}.atelier-hero .hero-actions .btn{width:100%}
 .atelier-feature-grid{grid-template-columns:1fr}.atelier-feature-primary{grid-column:span 1}
 .atelier-feature-card{min-height:172px}
 .atelier-marian-art{min-height:448px}.atelier-marian-art img{height:428px}
 .atelier-price-body{padding:35px 25px}.atelier-price-body .price-row strong{font-size:60px}
 .atelier-footer-main{grid-template-columns:1fr}.atelier-footer-main>div:first-child{grid-column:span 1}
 .atelier-dashboard-intro h1{font-size:34px}
 .atelier-dashboard-hero-copy{padding:27px 21px}.atelier-dashboard-hero h2{font-size:43px}
 .atelier-dashboard-library .tile strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.atelier-feature-card,.atelier-dashboard-shortcuts a,.atelier-pilar a{transition:none!important;transform:none!important}}

/* Hero uses a new crop of the existing approved Marian portrait, rather than
   stretching the old banner (whose right two-thirds are deliberately blank). */
.atelier-hero-arch{background:radial-gradient(ellipse at 48% 50%,#d5c29c,#22374a 85%)}
.atelier-hero-arch img{position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:103%;width:auto;max-width:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 10px 29px #0003)}
@media(max-width:720px){
 .atelier-hero-arch img{height:109%;object-fit:contain;object-position:center bottom}
 .demo-tag{display:none}
 .breadcrumb{white-space:nowrap;font-size:12px}
 .head-tools{gap:8px}
}
/* Narrow-phone regression: long page titles must never push notification controls
   out of the viewport; library cards must use truly shrinkable columns. */
.library-grid{width:100%;max-width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.library-grid .module-card{min-width:0;overflow:hidden}
@media(max-width:720px){
 .app-header{display:flex;justify-content:space-between;gap:8px}
 .left-head{min-width:0;flex:1;overflow:hidden;gap:7px}
 .breadcrumb{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-width:0;flex:1}
 .breadcrumb a,.breadcrumb>span{display:none}
 .head-tools{flex:none;gap:7px}
 .library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .library-grid .module-card{padding:22px 15px}
 .library-grid .module-card h3{overflow-wrap:anywhere}
}
@media(max-width:370px){
 .library-grid{grid-template-columns:1fr}
 .library-grid .module-card{width:100%;max-width:100%}
}

/* v0.3.7 — logo com transparência real; sem caixa marfim na navegação */
.brand img,.welcome-logo{background:transparent!important;box-shadow:none!important;object-fit:contain!important;}
.brand img{border:0!important;border-radius:0!important;flex:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.13));}
.site-nav .brand{align-items:center;gap:13px;}
.site-nav .brand img{width:57px;height:57px;}
.side-logo .brand img{width:58px;height:58px;}
.welcome-logo{border-radius:0!important;object-fit:contain!important;}
@media(max-width:620px){.site-nav .brand img{width:52px;height:52px}.site-nav .brand{gap:10px}.side-logo .brand img{width:56px;height:56px}}

/* v0.7.6 · Forms and onboarding have the same considered feel as the capela. */
.auth-main,.welcome-bg{background:radial-gradient(ellipse at 70% -15%,#fdf9ee 0%,#f6f1e7 55%,#ede6da 100%)}
.auth-card,.welcome-card{max-width:560px;border:1px solid #ded1bc;border-radius:var(--ap-radius-lg,20px);box-shadow:0 24px 56px rgba(21,47,63,.09),0 2px 4px rgba(21,47,63,.04)}
.auth-card h1,.welcome-card h1{font-family:'Cormorant Garamond',Georgia,serif;letter-spacing:-.024em;line-height:1.07;text-wrap:balance}
.auth-card form :where(input,textarea,select){border-radius:9px;background:#fffefa;min-height:52px}
.auth-card form :where(input,textarea,select):focus-visible{border-color:#ab854b;outline:3px solid rgba(167,121,62,.23);outline-offset:2px}
.auth-card form :where(label){font-weight:650;color:#193b4d}
.auth-card .btn.full,.welcome-card .btn.full{border-radius:9px;min-height:52px}
@media(max-width:600px){.auth-card,.welcome-card{border-radius:15px;padding:clamp(23px,6vw,32px)}.auth-main,.welcome-bg{padding:24px 14px}}
