/* Cada casa usa colores extraídos de su logo. */
.house-page { background:#faf9f6; }.house-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px var(--gutter); border-bottom:1px solid var(--line); background:white; }.house-home { font-size:14px; color:var(--house); font-weight:bold; }.house-header nav { display:flex; gap:24px; font-size:12px; }.house-hero { padding:80px var(--gutter); display:grid; grid-template-columns:1.4fr 1fr; gap:8vw; align-items:center; min-height:560px; background:linear-gradient(130deg,#fff,#f1f2ec); }.house-hero h1 { font-size:clamp(44px,6vw,84px); color:var(--house); margin:22px 0; }.house-kicker { font-size:10px; letter-spacing:.16em; color:var(--house); }.house-description { max-width:480px; font-size:17px; }.house-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:25px; margin-top:32px; }.house-logo-main { display:grid; place-items:center; border-radius:12px; padding:25px; background:white; border:1px solid var(--line); }.house-logo-main img { width:100%; max-width:300px; height:300px; object-fit:contain; }.house-button { display:inline-flex; align-items:center; justify-content:center; background:var(--house); color:white; border:1px solid var(--house); border-radius:30px; padding:14px 22px; font-size:13px; transition:transform .2s; }.house-button:hover { transform:translateY(-3px); }.house-text-link { display:inline-block; border-bottom:1px solid var(--house); padding-bottom:6px; color:var(--house); font-size:13px; }.house-section { padding:75px var(--gutter); scroll-margin-top:20px; }.house-section-label { font-size:10px; letter-spacing:.15em; border-top:1px solid var(--line); padding-top:18px; margin-bottom:40px; color:var(--house); }.house-section h2 { font-size:clamp(36px,4.5vw,65px); }.house-page em { color:var(--house); }.house-about { display:grid; grid-template-columns:1.1fr 1fr; gap:8vw; }.house-about p { font-size:15px; margin-bottom:20px; }.house-tinted { background:#f0f1eb; }.house-section-intro { margin-top:25px; max-width:650px; font-size:14px; }.house-program-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:35px 0; }.house-program-card { padding:30px; background:white; border-top:3px solid var(--house-accent); border-radius:4px; }.house-program-card h3 { font-size:20px; font-weight:500; line-height:1.3; }.house-program-card ul { padding-left:18px; color:var(--muted); font-size:14px; }.house-program-card li { margin:10px 0; }.house-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; margin-top:35px; }.house-gallery img { width:100%; height:280px; object-fit:cover; border-radius:5px; }.house-photo-pending { padding:60px 25px; border:1px solid var(--line); border-radius:5px; margin-top:30px; font-size:14px; background:white; }.house-contact { background:var(--house); color:white; }.house-contact .house-section-label { color:white; border-color:#ffffff35; }.house-contact em { color:var(--house-accent); }.house-contact p { color:#ffffffe0; font-size:14px; max-width:600px; margin-top:25px; }.house-contact-links { display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:30px; }.house-contact .house-button { background:white; color:var(--house); border-color:white; }.house-contact .house-secondary { background:transparent; color:white; }.house-contact .house-text-link { color:white; border-color:white; overflow-wrap:anywhere; }.house-other h2 { font-size:34px; }.house-other-links { display:flex; flex-wrap:wrap; gap:18px 30px; margin-top:28px; }.house-other-links a { font-size:14px; color:var(--house); border-bottom:1px solid var(--line); padding-bottom:8px; }.house-page .help-header,.house-page .help-submit { background:var(--house); }.house-page-link { display:block; }.house-page-link:focus-visible { outline:3px solid var(--blue); outline-offset:8px; }
@media(max-width:760px) { .house-header { padding:18px 24px; flex-direction:column; align-items:flex-start; }.house-header nav { gap:18px; flex-wrap:wrap; }.house-hero { padding:45px 24px; grid-template-columns:1fr; gap:35px; }.house-hero h1 { font-size:45px; }.house-logo-main { max-width:330px; margin:auto; width:100%; }.house-logo-main img { height:230px; }.house-section { padding:55px 24px; }.house-about,.house-program-grid,.house-gallery { grid-template-columns:1fr; gap:25px; }.house-photo-pending { padding:40px 25px; } }
/* Portada de cada fundación con su logo, burbujas y scroll suave. */
.house-cover { min-height:calc(100svh - 70px); padding:45px 24px 60px; display:grid; place-items:center; position:relative; background:radial-gradient(circle at center,#79a84608,transparent 55%),white; overflow:hidden; }.house-cover-content { text-align:center; position:relative; z-index:1; max-width:850px; width:100%; }.house-cover h1 { font-family:Georgia,serif; font-size:clamp(34px,4.4vw,65px); line-height:1.1; color:var(--house); letter-spacing:-.04em; }.house-cover-logo { width:clamp(230px,28vw,365px); margin:28px auto; }.house-cover-logo img { width:100%; height:auto; max-height:365px; object-fit:contain; }.house-cover p { margin:0 auto 25px; max-width:480px; font-size:14px; }.house-cover .house-button { font-size:11px; letter-spacing:.08em; }.house-cover-bubble { position:absolute; border-radius:50%; opacity:.17; background:var(--house-accent); width:18px; height:18px; }.house-cover-bubble.bubble-one { left:15%; top:35%; }.house-cover-bubble.bubble-two { right:15%; bottom:25%; background:var(--house); width:12px; height:12px; }.house-detailed-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:35px; }.house-detail-card { background:white; border:1px solid var(--line); border-radius:6px; overflow:hidden; display:flex; flex-direction:column; }.house-card-photo { height:175px; position:relative; background:linear-gradient(135deg,#f0f1eb,#f8f7f3); overflow:hidden; }.house-card-photo img { width:100%; height:100%; object-fit:cover; }.house-image-pending { position:absolute; bottom:18px; left:20px; right:20px; font-size:11px; color:var(--muted); }.house-detail-body { padding:25px; flex:1; display:flex; flex-direction:column; }.house-detail-body h3 { font-size:20px; line-height:1.3; font-weight:500; margin-bottom:15px; }.house-detail-body p { font-size:14px; }.house-detail-open { background:none; border:0; border-bottom:1px solid var(--house); font:inherit; font-size:12px; align-self:flex-start; margin-top:auto; padding:22px 0 7px; cursor:pointer; }.house-detail-body a { align-self:flex-start; margin-top:15px; }.house-gallery-open { display:block; padding:0; border:0; background:none; width:100%; cursor:zoom-in; }.house-page .activity-dialog .button { background:var(--house); }.house-about h2 { white-space:pre-line; }
@media(max-width:900px) { .house-detailed-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .house-cover { min-height:650px; padding:35px 24px 55px; }.house-cover h1 { font-size:36px; }.house-cover-logo { width:min(76vw,310px); }.house-detailed-grid { grid-template-columns:1fr; }.house-card-photo { height:200px; } }
/* El logo de cada fundación se acomoda junto a su nombre. */
.house-header { position:sticky; top:0; z-index:20; backdrop-filter:blur(12px); background:#ffffffed; gap:20px; }.house-compact { display:flex; align-items:center; gap:9px; opacity:0; visibility:hidden; transition:opacity .3s,visibility .3s; max-width:330px; font-size:13px; color:var(--house); }.house-entered .house-compact { opacity:1; visibility:visible; }.house-compact-mark { display:block; width:36px; height:36px; flex-shrink:0; }.house-compact-mark img { width:100%; height:100%; object-fit:contain; }.house-logo-traveler { position:fixed!important; margin:0!important; z-index:22; pointer-events:none; transform-origin:center; opacity:0; }.house-logo-traveler img { width:100%; height:100%; object-fit:contain; }.house-routine { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:35px; }.house-routine-step { padding:25px; background:white; border-top:3px solid var(--house-accent); border-radius:5px; }.house-routine-step>span { color:var(--house); font-size:11px; }.house-routine-step h3 { font-size:20px; font-weight:500; margin:15px 0; }.house-routine-step p { font-size:14px; }.house-routine-time { margin-top:12px; }.house-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; margin-top:35px; }.house-video-grid video { width:100%; border-radius:6px; background:var(--ink); aspect-ratio:16/9; }.house-video-grid figcaption { font-size:13px; }
@media(max-width:1000px) { .house-header { flex-wrap:wrap; }.house-routine { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .house-header { display:grid; grid-template-columns:1fr; padding:12px 24px; gap:8px; }.house-compact { grid-row:2; height:30px; font-size:12px; }.house-compact-mark { width:30px; height:30px; }.house-header nav { grid-row:3; font-size:11px; gap:13px; }.house-routine,.house-video-grid { grid-template-columns:1fr; }.house-cover { min-height:600px; }.house-cover h1 { font-size:32px; }.house-cover-logo { width:min(70vw,280px); } }
