.pir-hero{position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-top:var(--header-height)}.pir-hero__bg{position:absolute;inset:0;margin:0 var(--spacing-md);border-radius:16px;overflow:hidden;background:linear-gradient(160deg,#0d0d1a,#1a1a2e,#16213e,#0f3460,#1a1a2e)}.pir-hero__bg:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 120% 60% at 50% 100%,rgba(255,255,255,.06) 0%,transparent 70%),radial-gradient(ellipse 80% 40% at 30% 80%,rgba(0,73,114,.15) 0%,transparent 60%);z-index:1}.pir-hero__mountains{position:absolute;bottom:0;left:0;right:0;height:30%;z-index:1;overflow:hidden}.pir-hero__mountains svg{position:absolute;bottom:0;width:100%;height:100%}.pir-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0d0d1a33,#1a1a2e80,#0d0d1ab3);z-index:2}.pir-hero__content{position:relative;z-index:3;text-align:center;max-width:900px;padding:var(--spacing-3xl) var(--spacing-md)}.pir-hero__badge{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#ffffffb3;border:1px solid rgba(255,255,255,.2);padding:8px 24px;border-radius:50px;margin-bottom:var(--spacing-lg)}.pir-hero__title{font-family:var(--font-hero-title);font-size:2.4rem;font-style:italic;font-weight:400;color:#fff;line-height:1.1;text-shadow:0 4px 20px rgba(0,0,0,.6);margin-bottom:var(--spacing-md)}.pir-hero__subtitle{font-family:var(--font-body);font-size:1rem;color:#ffffffd9;text-shadow:0 2px 8px rgba(0,0,0,.5);max-width:700px;margin:0 auto;line-height:1.7}.pir-hero__stats{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-xl);flex-wrap:wrap}.pir-hero__stat{text-align:center}.pir-hero__stat-value{font-family:var(--font-hero-title);font-size:1.5rem;font-style:italic;color:#fff;display:block}.pir-hero__stat-label{font-family:var(--font-body);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#fff9;margin-top:4px;display:block}.pir-section{max-width:var(--max-width);margin:0 auto;padding:var(--spacing-section) var(--spacing-md)}.pir-section__title{font-family:var(--font-hero-title);font-size:1.8rem;font-style:italic;font-weight:400;color:var(--color-primary);text-align:center;margin-bottom:var(--spacing-lg)}.pir-section__subtitle{font-family:var(--font-body);font-size:1rem;color:var(--color-text-light);text-align:center;max-width:700px;margin:-24px auto var(--spacing-xl);line-height:1.6}.pir-intro{background:#1a1a2e;padding:var(--spacing-section) var(--spacing-md)}.pir-intro__inner{max-width:800px;margin:0 auto}.pir-intro__text{font-family:var(--font-body);font-size:1.1rem;line-height:1.85;color:#ffffffe0;text-align:center}.pir-intro__text+.pir-intro__text{margin-top:var(--spacing-md)}.pir-climbs-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl)}.pir-climb-card{background:var(--color-background);border:1px solid var(--color-primary-fade-10);border-radius:var(--radius-lg);padding:0;overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.pir-climb-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px #0049721f}.pir-climb-card__header{background:linear-gradient(135deg,#1a1a2e,#16213e);padding:var(--spacing-lg) var(--spacing-xl);position:relative;overflow:hidden}.pir-climb-card__header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),transparent)}.pir-climb-card__altitude{font-family:var(--font-hero-title);font-size:1.8rem;font-style:italic;color:#fff;line-height:1;margin-bottom:4px}.pir-climb-card__name{font-family:var(--font-hero-title);font-size:1.2rem;font-style:italic;color:#fffc}.pir-climb-card__body{padding:var(--spacing-lg) var(--spacing-xl)}.pir-climb-card__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.pir-climb-card__stat-value{font-family:var(--font-body);font-size:1rem;font-weight:700;color:var(--color-primary);display:block}.pir-climb-card__stat-label{font-family:var(--font-body);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);display:block;margin-top:2px}.pir-climb-card__desc{font-family:var(--font-body);font-size:.9rem;color:var(--color-text-light);line-height:1.6}.pir-climb-card__badge{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 12px;border-radius:50px;margin-top:var(--spacing-sm);background:#1a1a2e;color:#fff}.pir-climb-card__badge--race{background:#dc2626;color:#fff}.pir-climb-card__profile{height:4px;background:linear-gradient(90deg,#22c55e,#eab308 40%,#f97316,#dc2626);border-radius:2px;margin-bottom:var(--spacing-md);position:relative}.pir-towns-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}.pir-town-card{background:var(--color-background);border:1px solid var(--color-primary-fade-10);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.pir-town-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00497214}.pir-town-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.pir-town-card__name{font-family:var(--font-hero-title);font-size:1.2rem;font-style:italic;font-weight:500;color:var(--color-text)}.pir-town-card__time{font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-fade-10);padding:4px 10px;border-radius:50px;white-space:nowrap}.pir-town-card__desc{font-family:var(--font-body);font-size:.88rem;color:var(--color-text-light);line-height:1.5;margin-bottom:var(--spacing-xs)}.pir-town-card__highlight{font-family:var(--font-body);font-size:.8rem;font-weight:600;color:var(--color-primary);font-style:italic}.pir-routes-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl)}.pir-route-card{background:var(--color-background);border:1px solid var(--color-primary-fade-10);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.pir-route-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0049721a}.pir-route-card__tag{background:linear-gradient(135deg,#1a1a2e,#0f3460);padding:var(--spacing-md) var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-sm)}.pir-route-card__tag-text{font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#fffc}.pir-route-card__body{padding:var(--spacing-lg) var(--spacing-xl)}.pir-route-card__name{font-family:var(--font-hero-title);font-size:1.3rem;font-style:italic;font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-sm)}.pir-route-card__stats{display:flex;gap:var(--spacing-md);font-family:var(--font-body);font-size:.85rem;color:var(--color-text-light);margin-bottom:var(--spacing-sm)}.pir-route-card__stat{display:flex;align-items:center;gap:4px}.pir-route-card__desc{font-family:var(--font-body);font-size:.9rem;color:var(--color-text-light);line-height:1.6}.pir-beyond{background:#1a1a2e;padding:var(--spacing-section) var(--spacing-md)}.pir-beyond__inner{max-width:var(--max-width);margin:0 auto}.pir-beyond__title{font-family:var(--font-hero-title);font-size:1.8rem;font-style:italic;font-weight:400;color:#fff;text-align:center;margin-bottom:var(--spacing-lg)}.pir-beyond-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl)}.pir-beyond-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--spacing-xl);transition:transform var(--transition-fast),background var(--transition-fast)}.pir-beyond-card:hover{transform:translateY(-3px);background:#ffffff14}.pir-beyond-card__icon{font-size:2rem;margin-bottom:var(--spacing-md)}.pir-beyond-card__title{font-family:var(--font-hero-title);font-size:1.2rem;font-style:italic;color:#fff;margin-bottom:var(--spacing-sm)}.pir-beyond-card__desc{font-family:var(--font-body);font-size:.9rem;color:#ffffffb3;line-height:1.6}.pir-gastro-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.pir-gastro-card{background:var(--color-background);border:1px solid var(--color-primary-fade-10);border-radius:var(--radius-lg);padding:var(--spacing-xl);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.pir-gastro-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00497214}.pir-gastro-card__name{font-family:var(--font-hero-title);font-size:1.2rem;font-style:italic;font-weight:500;color:var(--color-text);margin-bottom:4px}.pir-gastro-card__location{font-family:var(--font-body);font-size:.8rem;color:var(--color-primary);font-weight:600;margin-bottom:var(--spacing-sm)}.pir-gastro-card__stars{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 10px;border-radius:50px;background:#dc2626;color:#fff;margin-bottom:var(--spacing-sm)}.pir-gastro-card__desc{font-family:var(--font-body);font-size:.9rem;color:var(--color-text-light);line-height:1.6}.pir-gastro-traditional{background:var(--color-background-alt);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center}.pir-gastro-traditional__title{font-family:var(--font-hero-title);font-size:1.4rem;font-style:italic;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.pir-gastro-traditional__text{font-family:var(--font-body);font-size:.95rem;color:var(--color-text-light);line-height:1.6;max-width:600px;margin:0 auto}.pir-practical{background:var(--color-background-alt)}.pir-practical-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:var(--max-width);margin:0 auto}.pir-practical-item{text-align:center;padding:var(--spacing-md);min-width:0;overflow-wrap:anywhere}.pir-practical-item__icon{font-size:2rem;margin-bottom:var(--spacing-md);display:block}.pir-practical-item__title{font-family:var(--font-hero-title);font-size:1.1rem;font-style:italic;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.pir-practical-item__text{font-family:var(--font-body);font-size:.88rem;color:var(--color-text-light);line-height:1.6}.pir-transpyrenees{background:linear-gradient(135deg,#1a1a2e,#0f3460);border-radius:var(--radius-lg);padding:var(--spacing-xl) var(--spacing-md);text-align:center;margin:0 var(--spacing-md) var(--spacing-section);max-width:var(--max-width);position:relative;overflow:hidden}.pir-transpyrenees:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 100% 80% at 50% 120%,rgba(0,73,114,.3) 0%,transparent 70%)}.pir-transpyrenees__content{position:relative;z-index:1}.pir-transpyrenees__title{font-family:var(--font-hero-title);font-size:1.6rem;font-style:italic;font-weight:400;color:#fff;margin-bottom:var(--spacing-md)}.pir-transpyrenees__desc{font-family:var(--font-body);font-size:1.05rem;color:#ffffffd9;line-height:1.7;max-width:650px;margin:0 auto var(--spacing-xl)}.pir-transpyrenees__stats{display:flex;justify-content:center;gap:var(--spacing-xl);flex-wrap:wrap}.pir-transpyrenees__stat-value{font-family:var(--font-hero-title);font-size:1.8rem;font-style:italic;color:#fff;display:block}.pir-transpyrenees__stat-label{font-family:var(--font-body);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#fff9;margin-top:4px;display:block}.pir-lead{background:var(--color-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl) var(--spacing-md);text-align:center;margin:0 var(--spacing-md) var(--spacing-section);max-width:var(--max-width)}.pir-lead__title{font-family:var(--font-hero-title);font-size:1.5rem;font-style:italic;font-weight:400;color:#fff;margin-bottom:var(--spacing-md)}.pir-lead__subtitle{font-family:var(--font-body);font-size:1rem;color:#ffffffd9;margin-bottom:var(--spacing-xl);max-width:500px;margin-left:auto;margin-right:auto}.pir-lead__form{display:flex;gap:var(--spacing-sm);max-width:500px;margin:0 auto;flex-direction:column}.pir-lead__input{flex:1;padding:14px 18px;border:none;border-radius:50px;font-family:var(--font-body);font-size:16px;outline:none}.pir-lead__input::placeholder{color:#999}.pir-lead__button{padding:14px 28px;border:none;border-radius:50px;background:#fff;color:var(--color-primary);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap}.pir-lead__button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003}.pir-cta{background:#1a1a2e;text-align:center;padding:var(--spacing-section) var(--spacing-md)}.pir-cta__title{font-family:var(--font-hero-title);font-size:1.8rem;font-style:italic;font-weight:400;color:#fff;margin-bottom:var(--spacing-md)}.pir-cta__subtitle{font-family:var(--font-body);font-size:1.05rem;color:#ffffffbf;margin-bottom:var(--spacing-xl);max-width:550px;margin-left:auto;margin-right:auto}.pir-cta__button{display:inline-flex;align-items:center;gap:10px;background:var(--color-primary);color:#fff;font-family:var(--font-body);font-size:1rem;font-weight:600;padding:16px 36px;border-radius:50px;border:none;text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast);cursor:pointer}.pir-cta__button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00497266}@media(min-width:481px){.pir-practical-grid{grid-template-columns:1fr 1fr}.pir-practical-item{padding:var(--spacing-lg)}}@media(min-width:769px){.pir-hero{min-height:85vh}.pir-hero__bg{margin:0 var(--spacing-lg);border-radius:20px}.pir-hero__title{font-size:4rem}.pir-hero__subtitle{font-size:1.25rem}.pir-hero__stats{gap:var(--spacing-xl)}.pir-hero__stat-value{font-size:2rem}.pir-section__title,.pir-beyond__title{font-size:2.4rem}.pir-climbs-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.pir-routes-grid,.pir-gastro-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.pir-towns-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.pir-transpyrenees{margin:0 auto var(--spacing-section);padding:var(--spacing-3xl) var(--spacing-xl)}.pir-transpyrenees__title{font-size:2.2rem}.pir-transpyrenees__stats{gap:var(--spacing-3xl)}.pir-transpyrenees__stat-value{font-size:2.4rem}.pir-lead{margin:0 auto var(--spacing-section);padding:var(--spacing-3xl) var(--spacing-xl)}.pir-lead__form{flex-direction:row}.pir-lead__title{font-size:2rem}.pir-cta__title{font-size:2.4rem}.pir-practical-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.pir-beyond-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.pir-climb-card__altitude{font-size:2.2rem}.pir-climb-card__badge,.pir-climb-card__stat-label,.pir-gastro-card__stars,.pir-route-card__tag-text{font-size:.7rem}.pir-practical-item{min-width:auto;overflow-wrap:normal}.pir-lead__input{font-size:.95rem}}
