/* Alinéate — identitat marfil, granat, daurada i sàlvia. */
:root{
  color-scheme:light;
  --paper:#F5F0E8;
  --surface:#F1EAE0;
  --ink:#242222;
  --text:#302C2A;
  --navy:#741F29;
  --wine:#741F29;
  --muted:#6F6962;
  --gold:#A77E4C;
  --gold-light:#C2A477;
  --sage:#A5A99A;
  --line:#D9CEC0;
  --ease-out:cubic-bezier(.22,.8,.28,1);
  --gutter:clamp(22px,5.4vw,86px);
  --header-height:86px;
}
html{scroll-padding-top:calc(var(--header-height) + 18px);scroll-behavior:smooth}
body{background:var(--paper);color:var(--text);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.78}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.035em}
h1 em,h2 em{color:var(--gold-light)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
::selection{background:#D9C5A6;color:var(--ink)}
.site-header{background:var(--paper);color:var(--ink);border-bottom:1px solid rgba(116,31,41,.14);box-shadow:0 3px 20px rgba(66,47,37,.035)}
.header-inner{height:var(--header-height);gap:24px}
.wordmark{gap:12px;min-width:225px}
.header-logo{display:block;width:43px;height:54px;object-fit:contain}
.wordmark-type{display:flex;flex-direction:column;gap:2px;line-height:1}
.wordmark-name{font-family:"Playfair Display",Georgia,serif;font-size:clamp(19px,1.8vw,25px);font-weight:400;letter-spacing:.17em;color:var(--ink);white-space:nowrap}
.wordmark-byline{display:flex;align-items:center;justify-content:center;gap:7px;font-size:7px;font-weight:500;letter-spacing:.28em;color:var(--muted);white-space:nowrap}
.wordmark-byline:before,.wordmark-byline:after{content:"";width:20px;height:1px;background:var(--gold-light)}
.desktop-nav{gap:clamp(16px,2.35vw,35px);font-size:11px;letter-spacing:.055em}
.desktop-nav a{padding-block:10px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.desktop-nav a:hover{color:var(--wine);border-color:var(--gold-light)}
.language-switch button{font-size:9px;letter-spacing:.1em}
.language-switch button[aria-pressed="true"]{color:var(--wine);text-decoration-color:var(--gold)}
.menu-toggle{font-size:10px;letter-spacing:.08em}
.menu-lines{width:20px;height:10px}
.mobile-nav{background:var(--paper);border-top:1px solid var(--line)}
.mobile-nav a{padding-block:10px;font-family:"Playfair Display",Georgia,serif;font-size:20px}
.hero{background:var(--wine);color:var(--paper)}
.hero-scene{min-height:min(800px,100svh);min-height:max(690px,100svh);padding-block:calc(var(--header-height) + 35px) 105px}
.sky{background:#492025}
.sky-poster,.sky-video{filter:sepia(.22) saturate(.62) contrast(1.04);object-position:62% 44%}
.sky-shade{background:linear-gradient(90deg,rgba(76,25,32,.96) 0%,rgba(116,31,41,.82) 42%,rgba(116,31,41,.48) 74%,rgba(60,28,27,.7) 100%)}
.hero-grid{grid-template-columns:.94fr 1.06fr;gap:clamp(22px,4vw,64px)}
.hero-copy{max-width:650px}
.hero-copy .eyebrow{color:#E1CDAE;font-size:9px;letter-spacing:.22em;margin-bottom:27px}
.hero-copy h1{font-size:clamp(46px,5.2vw,76px);line-height:1.18;letter-spacing:-.035em;margin-bottom:25px;text-wrap:balance}
.hero-title-state em{color:#E0C79F!important;background:none;-webkit-text-fill-color:#E0C79F;font-style:italic}
.hero-intro{color:#F1E7DB;max-width:38ch;font-size:14px;line-height:1.85;margin-bottom:27px}
.hero-cta{gap:18px}
.button{min-height:50px;padding:13px 21px;border-radius:2px;font-size:11px;letter-spacing:.035em}
.button-gold{background:var(--gold-light);color:var(--ink)}
.button-ink{background:var(--wine);color:var(--paper)}
.button-gold:hover{background:#D4BC98}
.hero-secondary{color:#F1E7DB;border-color:rgba(245,240,232,.5);font-size:10px}
.hero-note{color:#E5D7C6;font-size:9px;letter-spacing:.1em;margin-top:24px}
.chart-figure{max-width:620px}
#celestial-chart{color:#F0E7D6}
#natal-chart{color:#F5F0E8}
#draconic-chart{color:#D9BC8D}
.chart-origin text{fill:#F5F0E8}
.chart-stage-title{color:#F4E8D7;font-size:21px}
.chart-stage-description{color:#E6D8C9}
.chart-example{color:#D7C7B7}
.hero-bottom{bottom:22px}
.hero-scroll,.chart-controls button{color:#F1E7DB}
.chart-controls button[aria-pressed="true"]{color:#fff;border-color:#D9BC8D}
.chart-controls button{font-size:10px}
.services{padding-top:clamp(82px,9vw,132px);padding-bottom:clamp(90px,10vw,150px)}
.services .section-heading{grid-template-columns:1.1fr .9fr;gap:clamp(42px,8vw,116px);align-items:end}
.services .section-heading h2{font-size:clamp(39px,4.3vw,62px);line-height:1.15}
.section-heading .eyebrow,.connection-heading .eyebrow{color:var(--wine)}
.section-intro{color:#625D57;max-width:46ch;font-size:14px;line-height:1.85}
.service-paths{gap:clamp(42px,10vw,150px);padding-top:20px}
.service-path{border-color:var(--gold-light);padding-top:23px}
.path-roots{margin-top:66px}
.path-index,.connection-label,.session-category{color:var(--wine);font-size:9px;letter-spacing:.17em}
.service-path h3{font-size:clamp(34px,3.8vw,52px);margin:24px 0 17px}
.service-path p{color:#6F6962;font-size:13px;line-height:1.85}
.path-link{padding-top:24px;font-size:10px;color:var(--wine)}
.path-link .icon{border-radius:1px;border-color:var(--gold-light)}
.method.section-space{background:var(--surface);color:var(--ink);--muted:#6F6962;--line:#D4C9BB;--gold:#741F29;--gold-light:#A77E4C;padding-block:clamp(82px,9vw,132px)}
.method::before{opacity:.035;filter:sepia(1);mask-image:linear-gradient(90deg,transparent 10%,#000 95%)}
.method-layout{grid-template-columns:.85fr 1.15fr;gap:clamp(55px,8vw,120px)}
.astrology-figure{max-width:435px}
.astrology-figure:before{border-color:#A5A99A;inset:-15px 15px 15px -15px}
.astrology-figure figcaption{color:#5E5751;font-size:10px}
.astrology-figure .art-note{color:#887E71}
.method-copy .eyebrow{color:var(--wine)}
.section-number{border-color:var(--gold-light)}
.method-copy h2{font-size:clamp(38px,4vw,58px);margin-bottom:22px}
.method-copy h2 em{color:var(--wine)}
.method-copy .section-intro{color:#625D57;font-size:13px;line-height:1.85}
.reading-types{margin:27px 0 25px}
.reading-types article{border-color:#D6CCBF;padding-block:20px;grid-template-columns:32px 1fr;gap:15px}
.reading-symbol{color:var(--wine);width:23px;height:23px}
.reading-types h3{font-size:22px;letter-spacing:-.025em}
.reading-types p{color:#6F6962;font-size:12px;line-height:1.8}
.method-actions .text-link{color:var(--wine);border-color:#C2A477}
.method-actions .contact-link{color:#6F6962}
.session-context{margin-top:52px}
.session-context-heading{border-color:#CDC1B2;padding-top:30px}
.session-context-heading h3{font-size:clamp(24px,2.3vw,31px)}
.session-context-heading p{color:#6F6962;font-size:11px}
.session-steps{gap:clamp(24px,3vw,48px);margin-top:28px}
.session-step-number{color:var(--wine)}
.session-steps h4{font-size:13px}
.session-steps p{font-size:12px;color:#6F6962;line-height:1.8}
.session-preparation{border-color:#D5C9BB;color:#6F6962}
.session-preparation strong{color:var(--wine)}
.connection{background:#EBECE4;border-color:#D8D8CC;padding-block:clamp(82px,9vw,132px)}
.connection-heading h2{font-size:clamp(39px,4.7vw,65px)}
.connection-heading h2 em{color:var(--wine)}
.connection-layout{grid-template-columns:.88fr 1.2fr .88fr;gap:clamp(22px,4vw,60px);margin-top:48px}
.brand-emblem{max-width:365px}
.brand-emblem img{width:min(100%,340px);margin:auto;filter:drop-shadow(0 10px 24px rgba(85,65,42,.07))}
.connection-note{max-width:28ch}
.connection-note h3{font-size:clamp(24px,2.5vw,32px);margin:18px 0}
.connection-note p{color:#635F57;font-size:12px;line-height:1.8}
.connection-note:after{background:var(--gold-light);width:44px}
.connection-conclusion{color:#625D57;font-size:13px;line-height:1.85;max-width:62ch;margin-top:42px}
.about{background:var(--wine);color:var(--paper);--muted:#E6DAD0;--line:rgba(245,240,232,.24);--gold:#E2CDAE;--gold-light:#C2A477}
.about::before{opacity:.07;filter:sepia(.4);mask-image:linear-gradient(90deg,#000,transparent 80%)}
.about-heading .eyebrow{color:#E1CDAE}
.about-heading h2{font-size:clamp(62px,7vw,98px)}
.about-heading h2 em{color:#E1CDAE}
.about-signature{color:#E1CDAE}
.about-copy .lead{font-size:clamp(27px,3vw,35px)}
.about-copy>p{font-size:13px;line-height:1.85;color:#EFE4D8}
.about-copy .text-link{color:var(--paper);border-color:#D3B987}
.pricing{padding-block:clamp(82px,9vw,132px)}
.pricing .section-heading{grid-template-columns:1.1fr .9fr;gap:clamp(42px,8vw,115px);align-items:end;margin-bottom:45px}
.pricing h2{font-size:clamp(40px,4.8vw,65px)}
.pricing h2 em{color:var(--wine)}
.session-layout{grid-template-columns:1fr;gap:0}
.session-category{color:var(--wine)}
.session-complete{background:var(--wine);border-top:2px solid var(--gold-light);color:var(--paper);padding:clamp(28px,4vw,44px)}
.session-complete .price{color:#F0DABB}
.session-complete h3{font-size:clamp(27px,3vw,34px)}
.session-complete ul{color:#F0E5D8}
.session-complete li:before{background:var(--gold-light);border-radius:0;transform:rotate(45deg)}
.session-complete .button{max-width:360px}
.session-natal{border-color:var(--line);padding-block:26px 33px}
.session-natal h3{font-size:29px}
.session-main>p{color:#6F6962;font-size:13px}
.session-natal .text-link{color:var(--wine);border-color:var(--gold-light)}
.price{color:var(--ink);font-size:53px}
.faq{padding-block:clamp(72px,8vw,112px);grid-template-columns:.85fr 1.15fr;gap:clamp(45px,7vw,100px)}
.faq .eyebrow{color:var(--wine)}
.faq h2{font-size:clamp(42px,5vw,65px)}
.faq h2 em{color:var(--wine)}
.faq-list{border-color:var(--line)}
.faq-list details{border-color:var(--line)}
.faq-list summary{font-size:12px;line-height:1.6}
.faq-list summary:after{color:var(--wine);font-size:23px}
.faq-list details p{font-size:12px;color:#6F6962;line-height:1.8}
.contact{background:var(--wine);color:var(--paper);--muted:#E8DDD2;--line:rgba(245,240,232,.24);--gold:#E3CDAE;--gold-light:#C2A477}
.contact::before{opacity:.075;filter:sepia(.35);mask-image:linear-gradient(90deg,#000,transparent 94%)}
.contact-heading .eyebrow{color:#E1CDAE}
.contact h2{font-size:clamp(60px,7vw,100px)}
.contact h2 em{color:#E1CDAE}
.contact-heading>p:last-child,.contact-copy>p{color:#EFE4D8;font-size:13px;line-height:1.85}
.contact-copy .contact-label,.contact-field label{color:var(--paper)}
.contact-field input,.contact-field select,.contact-field textarea{border-color:rgba(245,240,232,.38);background:#64202A;color:var(--paper);color-scheme:dark}
.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{outline-color:var(--gold-light);border-color:var(--gold-light)}
.contact-form .contact-hint,.contact-demo-note{color:#E7DCD2}
.contact-demo-note{border-color:var(--gold-light)}
.contact-form .button{max-width:410px;background:var(--gold-light)}
.contact-status{color:var(--paper)}
.service-picker button{border-color:rgba(245,240,232,.42);color:var(--paper)}
.service-picker button[aria-pressed="true"]{background:var(--gold-light);border-color:var(--gold-light);color:var(--ink)}
.site-footer{grid-template-columns:auto 1fr auto;gap:clamp(28px,5vw,72px);padding-block:43px}
.footer-brand{display:inline-flex;align-items:center;gap:10px;width:auto}
.footer-brand img{width:41px;height:50px;object-fit:contain}
.footer-brand .wordmark-name{font-size:19px}
.footer-brand .wordmark-byline{font-size:6px}
.footer-message p{font-size:23px;color:var(--ink)}
.footer-message>span{color:#6F6962;font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.footer-links{font-size:10px}
.copyright{color:#756D63}
.dark-section .text-link{border-color:var(--gold-light)}
.reveal{transition-duration:500ms}
@media(hover:hover) and (pointer:fine){
  .button:hover{transform:translateY(-2px)}
  .button-gold:hover{background:#D8C19C}
  .dark-section .text-link:hover,.contact-email:hover{color:#F0DABB}
  .service-path:hover .path-link .icon{background:#EFE5D5;border-color:var(--gold-light)}
  .service-picker button:hover{border-color:var(--gold-light)}
}
@media(max-width:1100px){
  .wordmark{min-width:210px}
  .header-inner{gap:15px}
  .desktop-nav{gap:18px}
  .hero-grid{grid-template-columns:.95fr 1.05fr;gap:16px}
  .hero-copy h1{font-size:clamp(46px,5.2vw,62px)}
  .service-paths{gap:55px}
  .method-layout{gap:45px}
  .connection-layout{gap:20px}
}
@media(max-width:1000px){
  .wordmark{min-width:0}
  .desktop-nav{display:none}
  .menu-toggle{display:flex}
  .hero-grid{grid-template-columns:1fr 1fr;gap:20px}
  .hero-copy h1{font-size:clamp(45px,5.3vw,60px)}
  .hero-cta{align-items:flex-start;flex-direction:column;gap:8px}
  .method-layout{grid-template-columns:.85fr 1.15fr;gap:38px}
  .about-layout{gap:52px}
}
@media(max-width:760px){
  :root{--header-height:76px;--gutter:24px}
  .header-logo{width:38px;height:48px}
  .wordmark-name{font-size:20px}
  .wordmark-byline{font-size:6px}
  .header-actions{gap:14px}
  .hero-scene{min-height:850px;min-height:max(850px,100svh);justify-content:flex-start;padding-block:calc(var(--header-height) + 32px) 96px}
  .sky-shade{background:linear-gradient(180deg,rgba(76,25,32,.9),rgba(116,31,41,.75) 58%,rgba(76,25,32,.58))}
  .hero-grid{grid-template-columns:1fr;gap:15px}
  .hero-copy{max-width:580px;padding-bottom:0}
  .hero-copy .eyebrow{margin-bottom:18px}
  .hero-copy h1{font-size:clamp(43px,8vw,58px);line-height:1.17;margin-bottom:17px}
  .hero-intro{font-size:13px;line-height:1.8;margin-bottom:17px;max-width:43ch}
  .hero-cta{align-items:center;flex-direction:row;gap:14px}
  .hero-copy .button{min-height:46px;padding-inline:16px;font-size:10px}
  .hero-secondary{font-size:9px}
  .hero-note{display:none}
  .chart-figure{width:min(100%,410px);justify-self:center;margin-top:2px}
  .chart-caption{margin-top:0}
  .chart-stage-title{font-size:19px}
  .chart-stage-description{font-size:10px}
  .chart-example{font-size:8px}
  .hero-bottom{bottom:17px;justify-content:center}
  .hero-scroll{display:none}
  .chart-controls{gap:20px}
  .chart-controls button{font-size:9px}
  .section-space{padding-block:72px}
  .services .section-heading,.pricing .section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}
  .section-intro{font-size:13px;max-width:49ch}
  .service-paths{grid-template-columns:1fr;gap:25px;padding-top:0}
  .service-path{padding-top:19px}
  .path-roots{margin-top:5px}
  .service-path h3{font-size:37px;margin:18px 0 11px}
  .service-path p{font-size:12px}
  .path-link{padding-top:16px}
  .method-layout{grid-template-columns:1fr;gap:33px}
  .astrology-figure{width:100%;max-width:430px;margin:10px auto}
  .method-copy h2{font-size:clamp(37px,8vw,48px)}
  .method-copy .section-intro{font-size:13px}
  .reading-types article{grid-template-columns:30px 1fr;gap:13px;padding-block:18px}
  .reading-types h3{font-size:21px}
  .reading-types p{font-size:12px}
  .session-context{margin-top:38px}
  .session-context-heading{display:block;padding-top:25px}
  .session-context-heading p{margin-top:12px;font-size:12px}
  .session-steps{grid-template-columns:1fr;gap:21px;margin-top:24px}
  .session-steps p{font-size:12px;max-width:49ch}
  .session-preparation{font-size:11px}
  .connection-heading h2{font-size:clamp(38px,8vw,50px)}
  .connection-layout{grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}
  .brand-emblem{grid-row:1;grid-column:1/-1;max-width:245px}
  .brand-emblem img{width:210px}
  .connection-note{max-width:none;align-self:start;margin:0}
  .connection-note h3{font-size:23px;margin:14px 0}
  .connection-note p{font-size:11px}
  .connection-conclusion{font-size:12px;margin-top:30px}
  .about-layout{grid-template-columns:1fr;gap:30px}
  .about-heading h2{font-size:clamp(62px,12vw,84px)}
  .about-signature{margin-top:19px;font-size:21px}
  .about-copy .lead{font-size:27px;margin-bottom:19px}
  .about-copy>p{font-size:12px;margin-bottom:15px}
  .session-layout{grid-template-columns:1fr;gap:0}
  .session-natal{gap:18px;padding-block:21px 27px}
  .session-natal h3{font-size:25px}
  .session-main>p{font-size:12px;margin:10px 0 17px}
  .session-natal .price{font-size:43px}
  .session-complete{padding:27px 22px}
  .session-complete h3{font-size:27px}
  .session-complete .price{font-size:41px}
  .session-complete ul{font-size:11px}
  .faq{grid-template-columns:1fr;gap:25px;padding-top:8px}
  .faq h2{font-size:clamp(42px,10vw,55px)}
  .faq-list summary{font-size:11px;padding-block:21px}
  .faq-list details p{font-size:11px;padding-bottom:18px}
  .contact-inner{grid-template-columns:1fr;gap:31px}
  .contact h2{font-size:clamp(61px,12vw,84px)}
  .contact-heading>p:last-child,.contact-copy>p{font-size:12px;margin-top:16px}
  .contact-label{margin-bottom:10px}
  .site-footer{grid-template-columns:1fr 1fr;gap:22px 15px;padding-block:32px}
  .footer-brand{gap:8px}
  .footer-brand img{width:34px;height:43px}
  .footer-brand .wordmark-name{font-size:16px;letter-spacing:.14em}
  .footer-message p{font-size:19px}
  .footer-message>span{font-size:8px}
  .footer-links{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--line);padding-top:17px;font-size:9px}
  .copyright{grid-column:1/-1;margin-top:0}
}
@media(max-width:440px){
  :root{--header-height:70px;--gutter:20px}
  .header-inner{gap:8px}
  .header-logo{width:32px;height:42px}
  .wordmark{gap:7px}
  .wordmark-name{font-size:17px;letter-spacing:.14em}
  .wordmark-byline{font-size:5px;letter-spacing:.21em}
  .wordmark-byline:before,.wordmark-byline:after{width:12px}
  .header-actions{gap:10px}
  .language-switch button{font-size:9px;padding-inline:3px}
  .menu-toggle{font-size:9px;gap:7px}
  .hero-scene{min-height:870px;min-height:max(870px,100svh);padding-block:calc(var(--header-height) + 27px) 84px}
  .hero-copy .eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:17px}
  .hero-copy h1{font-size:clamp(39px,10vw,48px);letter-spacing:-.045em;margin-bottom:15px}
  .hero-intro{font-size:12px;line-height:1.75;max-width:40ch}
  .hero-cta{gap:11px;flex-wrap:wrap}
  .hero-copy .button{font-size:9px;padding:11px 14px;gap:13px;min-height:43px}
  .hero-secondary{font-size:8px}
  .chart-figure{max-width:345px}
  .chart-stage-title{font-size:17px}
  .chart-stage-description{font-size:9px}
  .chart-example{font-size:7px}
  .chart-controls{gap:17px}
  .chart-controls button{font-size:8px}
  .section-space{padding-block:62px}
  .services .section-heading h2{font-size:37px}
  .method-copy h2{font-size:36px}
  .reading-types h3{font-size:20px}
  .connection-layout{gap:20px 16px}
  .connection-label{font-size:7px;letter-spacing:.1em}
  .connection-note h3{font-size:20px}
  .connection-note p{font-size:10px}
  .brand-emblem img{width:190px}
  .session-complete{padding:25px 18px}
  .session-complete h3{font-size:24px}
  .session-complete .price{font-size:36px}
  .session-badge{font-size:7px}
  .site-footer{gap:18px 10px}
  .footer-brand .wordmark-name{font-size:14px}
  .footer-brand .wordmark-byline{font-size:5px}
  .footer-message p{font-size:17px}
  .footer-links{font-size:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-scene{min-height:auto}.sky-video{display:none}.motion-enabled .reveal{opacity:1;transform:none;transition:none}.site-header,.button,.chart-controls button,.service-picker button,.path-link .icon{transition:none}.hero-title-state{transition:none}.button:active{transform:none}}
