/* Primera visita — pàgina d'arribada (enllaç per WhatsApp) */

/* Capçalera: text + foto emmarcada (mateix llenguatge que la capçalera de La clínica) */
body.m-p-visit .pv-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(36px,6vw,96px);align-items:center;text-align:left}
body.m-p-visit .pv-hero .eyebrow::after{margin-left:0;margin-right:auto}
body.m-p-visit .pv-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(38px,4.4vw,60px);line-height:1.04;letter-spacing:-.02em;color:#fff;margin:0 0 18px;max-width:none}
body.m-p-visit .pv-lead{color:rgba(255,255,255,.78);max-width:42ch;margin:0;font-size:17px;line-height:1.6}
body.m-p-visit .pv-photo{position:relative;margin:0;z-index:2}
body.m-p-visit .pv-photo::before{content:"";position:absolute;inset:-14px -14px 26px -14px;border:1px solid rgba(201,163,107,.55);border-radius:30px;transform:translate(16px,14px);pointer-events:none;z-index:-1}
body.m-p-visit .pv-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:22px;box-shadow:0 40px 90px -30px rgba(0,0,0,.75),0 0 110px rgba(232,150,90,.16)}
body.m-p-visit .pv-photo figcaption{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:8px;padding:9px 16px 9px 12px;border-radius:999px;background:rgba(16,45,44,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,173,114,.45);color:#f3e3c4;font-size:13px;letter-spacing:.03em;white-space:nowrap}
body.m-p-visit .pv-photo figcaption svg{width:15px;height:15px;color:#d4ad72;flex:none}
/* Línies d'adreça (com les de telèfons a Contacte) */
body.m-p-visit .pv-hero .contact-lines{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:26px 0 22px!important;max-width:480px;border-top:1px solid rgba(201,163,107,.28);position:relative;z-index:3}
body.m-p-visit .pv-hero .contact-lines .cl{display:flex!important;flex-direction:row!important;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 18px!important;padding:13px 0 11px!important;border:0!important;border-bottom:1px solid rgba(201,163,107,.28)!important;background:none!important;text-decoration:none}
body.m-p-visit .pv-hero .contact-lines .cl-label{color:#e6cfa0!important;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
body.m-p-visit .pv-hero .contact-lines .cl-num{color:#fff!important;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(26px,2.2vw,32px)!important;line-height:1;display:inline-block;transition:transform .4s ease}
body.m-p-visit .pv-hero .contact-lines a.cl:hover .cl-num{transform:translateY(-3px)}
body.m-p-visit .pv-go{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 0;position:relative;z-index:3}
body.m-p-visit .pv-go a,body.m-p-visit .pv-go button{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 20px;border-radius:999px;font:inherit;font-size:14px;font-weight:600;letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:transform .35s cubic-bezier(.2,.75,.2,1),background .35s,border-color .35s,color .35s}
body.m-p-visit .pv-go .pv-main{background:#d4ad72;color:#12352f;border:1px solid #d4ad72}
body.m-p-visit .pv-go .pv-alt{background:transparent;color:#f3e3c4;border:1px solid rgba(212,173,114,.45)}
body.m-p-visit .pv-go a:hover,body.m-p-visit .pv-go button:hover{transform:translateY(-2px)}
body.m-p-visit .pv-go .pv-alt:hover{border-color:#d4ad72;color:#fff}
body.m-p-visit .pv-go svg{width:17px;height:17px;flex:none}
body.m-p-visit .pv-go-note{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(230,207,160,.7);margin:0 0 10px}
@media(max-width:1000px){
 body.m-p-visit .pv-hero-grid{grid-template-columns:1fr 1fr;gap:32px}
 body.m-p-visit .pv-hero h1{font-size:clamp(34px,4.6vw,44px)}
}
@media(max-width:760px){
 body.m-p-visit .pv-hero-grid{grid-template-columns:1fr;gap:0}
 body.m-p-visit .pv-copy{display:contents}
 body.m-p-visit .pv-hero .eyebrow{order:1}
 body.m-p-visit .pv-hero h1{order:2;margin-bottom:22px}
 body.m-p-visit .pv-photo{order:3;margin:0 0 30px}
 body.m-p-visit .pv-go-note{order:4}
 body.m-p-visit .pv-go{order:5}
 body.m-p-visit .pv-rating{order:6;margin-top:22px}
 body.m-p-visit .pv-lead{order:7;margin-top:18px}
 body.m-p-visit .pv-hero .contact-lines{order:8}
 body.m-p-visit .pv-photo::before{inset:-8px -8px 30px -8px;transform:translate(8px,8px);border-radius:24px}
 body.m-p-visit .pv-photo figcaption{left:12px;bottom:12px;font-size:12px}
}

/* Valoració a Google (al capçal) */
body.m-p-visit .pv-rating{display:inline-flex;align-items:center;gap:10px;margin:18px 0 4px;padding:7px 16px 7px 8px;border:1px solid rgba(212,173,114,.4);border-radius:999px;color:#f3e3c4;font-size:14px;text-decoration:none;position:relative;z-index:3;transition:border-color .35s,transform .35s cubic-bezier(.2,.75,.2,1)}
body.m-p-visit .pv-rating:hover{border-color:#d4ad72;transform:translateY(-2px)}
body.m-p-visit .pv-rating .pv-g{width:28px;height:28px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none}
body.m-p-visit .pv-rating .google-g{font-size:17px}
body.m-p-visit .pv-rating .pv-stars{white-space:nowrap;color:#e2b979;letter-spacing:.08em;font-size:13px}
body.m-p-visit .pv-rating b{font-weight:600;font-size:14px;color:#fff;letter-spacing:0;margin-left:2px}
body.m-p-visit .pv-rating .pv-rate-t::before{content:"· ";color:rgba(243,227,196,.6)}
@media(max-width:1000px){
 body.m-p-visit .pv-rating{display:grid;grid-template-columns:28px auto;column-gap:10px;row-gap:1px;padding:8px 16px 9px 8px;border-radius:20px;font-size:13px}
 body.m-p-visit .pv-rating .pv-g{grid-row:1/3;align-self:center}
 body.m-p-visit .pv-rating .pv-stars,body.m-p-visit .pv-rating .pv-rate-t{grid-column:2}
 body.m-p-visit .pv-rating .pv-rate-t::before{content:none}
}

/* Del carrer a la consulta */
.pv-route{padding:clamp(64px,8vw,120px) 0 clamp(40px,5vw,72px)}
.pv-route .pv-head{max-width:620px;margin-bottom:clamp(36px,5vw,64px)}
.pv-route h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(34px,3.8vw,50px);line-height:1.06;margin:6px 0 14px;color:#12352f}
.pv-route .pv-head p{color:#4c5f5a;margin:0;font-size:16px;line-height:1.7}
.pv-track{position:relative;list-style:none;margin:0;padding:0}
.pv-track::before,.pv-track::after{content:"";position:absolute;left:50%;top:0;width:1px;transform:translateX(-50%)}
.pv-track::before{bottom:0;background:rgba(18,53,47,.12)}
.pv-track::after{height:calc(var(--pv-p,0) * 100%);background:linear-gradient(#e2b979,#a07c45);box-shadow:0 0 12px rgba(214,152,96,.55)}
.pv-stop{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,110px);align-items:center;padding:clamp(22px,3vw,40px) 0}
.pv-stop::before{content:"";position:absolute;left:50%;top:50%;width:11px;height:11px;border-radius:50%;transform:translate(-50%,-50%);background:#f4f0e8;border:1px solid #a07c45;transition:background .5s,box-shadow .5s;z-index:1}
.pv-stop.is-on::before{background:#d4ad72;box-shadow:0 0 0 6px rgba(212,173,114,.18),0 0 18px rgba(214,152,96,.6)}
.pv-stop:nth-child(even) .pv-txt{order:2}
.pv-txt{max-width:420px;justify-self:end;text-align:right}
.pv-stop:nth-child(even) .pv-txt{justify-self:start;text-align:left}
.pv-n{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:44px;line-height:1;color:#a07c45;margin-bottom:12px}
.pv-txt h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(26px,2.4vw,32px);line-height:1.1;margin:0 0 10px;color:#12352f}
.pv-txt p{margin:0;color:#4c5f5a;font-size:15.5px;line-height:1.7}
.pv-fig{margin:0;border-radius:18px;overflow:hidden;aspect-ratio:4/5;max-width:440px;box-shadow:0 30px 60px -30px rgba(18,53,47,.45);opacity:0;transform:translateY(26px) scale(.985);transition:opacity 1s cubic-bezier(.2,.75,.2,1),transform 1.2s cubic-bezier(.2,.75,.2,1)}
.pv-stop:nth-child(even) .pv-fig{justify-self:end}
.pv-stop.is-on .pv-fig{opacity:1;transform:none}
.pv-fig img{width:100%;height:100%;object-fit:cover;display:block}
.pv-floor{aspect-ratio:4/5;max-width:440px;border-radius:18px;background:radial-gradient(70% 55% at 50% 38%,rgba(232,150,90,.22),transparent 70%),#12352f;display:grid;place-items:center;text-align:center;color:#f3e3c4;position:relative;overflow:hidden}
.pv-floor::after{content:"";position:absolute;inset:14px;border:1px solid rgba(212,173,114,.3);border-radius:12px}
.pv-floor b{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(110px,13vw,170px);line-height:.9;color:#fff;letter-spacing:-.02em}
.pv-floor b sup{font-size:.36em;vertical-align:top;position:relative;top:.35em;color:#d4ad72;margin-left:4px}
.pv-floor span{display:block;margin-top:14px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#e6cfa0}

/* Què cal portar */
.pv-bring{padding:clamp(56px,7vw,96px) 0;background:#e9ece4}
.pv-bring h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(32px,3.6vw,46px);line-height:1.08;margin:6px 0 clamp(24px,3vw,40px);color:#12352f}
.pv-bring ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(18,53,47,.14)}
.pv-bring li{padding:22px 22px 4px 0}
.pv-bring li svg{width:26px;height:26px;color:#a07c45;margin-bottom:12px}
.pv-bring h3{font-size:16px;font-weight:700;margin:0 0 8px;color:#12352f}
.pv-bring p{font-size:15px;line-height:1.65;margin:0;color:#4c5f5a}

@media(max-width:900px){
 .pv-track::before,.pv-track::after{left:7px;transform:none}
 .pv-stop{grid-template-columns:1fr;gap:18px;padding:22px 0 22px 34px}
 .pv-stop::before{left:7px;top:34px;transform:translate(-50%,0)}
 .pv-stop:nth-child(even) .pv-txt{order:0}
 .pv-txt,.pv-stop:nth-child(even) .pv-txt{justify-self:start;text-align:left}
 .pv-fig,.pv-floor{max-width:none;aspect-ratio:4/3}
 .pv-stop:nth-child(even) .pv-fig{justify-self:stretch}
 .pv-floor b{font-size:120px}
 .pv-bring ul{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 body.m-p-visit .pv-go a,body.m-p-visit .pv-go button{flex:1 1 auto;justify-content:center}
 body.m-p-visit .pv-go .pv-main{flex-basis:100%}
 .pv-bring ul{grid-template-columns:1fr}
 .pv-bring li{display:grid;grid-template-columns:44px 1fr;padding:18px 0;border-bottom:1px solid rgba(18,53,47,.1)}
 .pv-bring li svg{grid-row:span 2;margin:2px 0 0}
}
@media(prefers-reduced-motion:reduce){.pv-fig{opacity:1;transform:none;transition:none}.pv-track::after{height:100%}}

/* Kintsugi al recorregut: esquerda fina que es va omplint d'or */
.pv-track .pv-kin{position:absolute;left:0;top:0;pointer-events:none;overflow:visible;z-index:1}
.pv-track.has-kin::before,.pv-track.has-kin::after,.pv-track.has-kin .pv-stop::before,.pv-track.no-line::before,.pv-track.no-line::after,.pv-track.no-line .pv-stop::before{display:none}
@media(max-width:900px){.pv-track .pv-stop{padding-left:0}}
.pv-kin-crack{fill:none;stroke:rgba(18,53,47,.28);stroke-width:.8;stroke-linejoin:round}
.pv-kin-vein{stroke-width:.6}
.pv-kin-gold{fill:#c9a36b}
.pv-kin-vgold{fill:none;stroke:#c9a36b;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.pv-kin-joint{fill:rgba(201,163,107,0);stroke:rgba(18,53,47,.28);stroke-width:.7;transition:fill .9s ease,stroke .9s ease,filter .9s ease}
.pv-kin-joint.is-on{fill:#d4ad72;stroke:#b48c55;filter:drop-shadow(0 0 5px rgba(214,152,96,.55))}
.pv-kin-tip{transition:opacity .4s ease;mix-blend-mode:screen}
@media(prefers-reduced-motion:reduce){.pv-kin-joint{transition:none}}
/* Kintsugi a la targeta del pis: quan hi arribes, la targeta s'esquerda com un gerro i l'or omple l'esquerda */
.pv-floor>div{position:relative;z-index:2}
.pv-crack{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}
.pv-crack .pc-dark{fill:none;stroke:rgba(4,16,15,.85);stroke-linecap:round;stroke-linejoin:round}
.pv-crack .pc-lite{fill:none;stroke:rgba(243,227,196,.22);stroke-linecap:round;stroke-linejoin:round}
.pv-crack .pc-gold{fill:none;stroke:#d4ad72;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(240,194,124,.55))}
.pv-floor.is-hit{animation:pvHit .32s cubic-bezier(.3,1.6,.5,1)}
@keyframes pvHit{0%{transform:translate(0,0)}25%{transform:translate(-1.5px,1px) rotate(-.25deg)}55%{transform:translate(1px,-.5px) rotate(.15deg)}100%{transform:none}}
@media(prefers-reduced-motion:reduce){.pv-floor.is-hit{animation:none}}

/* La brúixola: rosa dels vents de Palamós, gran i fina, darrere la capçalera; l'agulla busca la clínica */
body.m-p-visit .pv-hero>.pv-rose-bg{position:absolute!important;z-index:0!important;left:calc(50% - 330px);top:50%;transform:translateY(-50%);opacity:.5;pointer-events:none;line-height:0}
body.m-p-visit .pv-rose{width:min(620px,90vw);height:auto;overflow:visible}
.pv-rose .pv-rose-ring{fill:none;stroke:#d4ad72;stroke-width:1;opacity:.7}
.pv-rose .pv-rose-ring2{opacity:.35;stroke-dasharray:2 4}
.pv-rose .pv-rose-ticks line{stroke:#d4ad72;stroke-width:.8;opacity:.75}
.pv-rose .pv-rose-pts path{fill:rgba(212,173,114,.22);stroke:#d4ad72;stroke-width:.9;stroke-linejoin:round}
.pv-rose .pv-rose-pts2 path{fill:none;stroke:#d4ad72;stroke-width:.7;opacity:.6}
.pv-rose .pv-rose-n{fill:#f3e3c4;font:600 12px 'DM Sans',sans-serif;text-anchor:middle;letter-spacing:.1em}
.pv-rose .pv-rose-nn{fill:#f0c27c}.pv-rose .pv-rose-hub{fill:#12352f;stroke:#f0c27c;stroke-width:1.2}
.pv-rose .pv-rose-needle{transform:rotate(34deg);animation:pvSeek 3.2s .6s cubic-bezier(.3,1.4,.4,1) both}
@keyframes pvSeek{0%{transform:rotate(-140deg)}55%{transform:rotate(52deg)}100%{transform:rotate(34deg)}}
@media(max-width:760px){
 body.m-p-visit .pv-hero>.pv-rose-bg{left:auto;right:-45%;top:150px;transform:none;opacity:.32}
 body.m-p-visit .pv-rose{width:420px}
  body.m-p-visit .pv-hero .eyebrow{order:0}
}
@media(prefers-reduced-motion:reduce){.pv-rose .pv-rose-needle{animation:none}}
body.m-p-visit .pv-coord{position:absolute;right:4px;bottom:100%;margin:0 0 12px;font-size:10px;line-height:1;letter-spacing:.2em;text-transform:uppercase;color:rgba(230,207,160,.5);white-space:nowrap}
@media(max-width:760px){body.m-p-visit .pv-coord{right:0;font-size:9px;letter-spacing:.14em;margin-bottom:9px}body.m-p-visit .pv-hero h1{margin-bottom:38px!important}}

.pv-fig picture{display:block;width:100%;height:100%}
@media(min-width:901px){.pv-fig.pv-fig-portal{aspect-ratio:1/1}}
/* contrast del botó principal sobre la secció nocturna */
html body.m-p-visit main section.m-night:not(#_) .pv-go a.pv-main.pv-main{color:#12352f!important}
