/* Colores y medidas compartidos por la raíz y /eco/. */
:root{--paper:#f2ecdf;--ink:#34312e;--muted:#625b54;--red:#b83b2e;--red-light:#e7503f;--line:#9c8d7540;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--page:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:118px}body{margin:0;color:var(--ink);background:var(--paper) url('/assets/papel-700.webp') repeat;background-size:700px auto;font-family:var(--sans);font-size:16px;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit}a:focus-visible,video:focus-visible{outline:3px solid #235f70;outline-offset:5px}::selection{background:#b83b2e;color:white}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(34px,4.5vw,62px);line-height:1.1;letter-spacing:-.045em}h3{line-height:1.2}p+p{margin-top:16px}.eyebrow{font:600 10px/1.5 var(--sans);letter-spacing:.17em}.skip-link{position:fixed;top:8px;left:8px;z-index:20;padding:10px 18px;background:white;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);padding:13px max(22px,calc((100vw - var(--page))/2));background:#f4efe5f7;display:flex;gap:25px;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;flex-shrink:0}.brand img{mix-blend-mode:multiply}.brand>span{font:700 12px/1.4 var(--sans);letter-spacing:.09em}.brand small{display:block;font-size:7px;letter-spacing:.11em;font-weight:400;margin-top:3px}.site-header nav{display:flex;gap:28px;align-items:center}.site-header nav a{text-decoration:none;font-size:12px;padding:10px 0}.site-header nav a:hover{color:var(--red)}.site-header nav a:last-child{color:var(--red);font-weight:700}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;background:linear-gradient(165deg,#e6503e,#b73429);color:white;border:1px solid #b83b2e2b;border-radius:40px;padding:14px 25px;text-decoration:none;font-size:15px;line-height:1.4;box-shadow:0 5px 13px #6e29161a;transition:transform .18s,box-shadow .18s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #6e29162c}.button>span{font-size:22px;line-height:1}.text-link{display:inline-flex;gap:22px;align-items:center;text-decoration:none;border-bottom:1px solid var(--red);padding:8px 0;color:var(--red);font-size:13px}.text-link:hover{border-bottom-width:2px}.hero{position:relative;max-width:1440px;margin:auto;display:grid;grid-template-columns:42% 58%;min-height:760px}.hero-images{position:relative;overflow:hidden;display:grid;grid-template-rows:48% 52%;min-height:100%}.hero-images img{width:100%;height:100%;object-fit:cover}.hero-taiko{object-position:65% 50%}.hero-yoroi{object-position:50% 32%}.hero-content{padding:62px clamp(28px,5vw,86px) 55px;position:relative;isolation:isolate;overflow:hidden}.hero-kanji{position:absolute;height:94%;width:auto;max-width:none;right:10%;top:2%;opacity:.055;z-index:-1;pointer-events:none}.hero .eyebrow{margin-bottom:27px;color:var(--muted)}h1{font-size:clamp(52px,7.8vw,110px);line-height:.98;letter-spacing:-.055em;color:var(--red);margin-bottom:28px}h1>span{display:block;white-space:nowrap}h1 .plus{font-size:.46em;margin:9px 0 12px;font-weight:400}.hero-intro{font:400 clamp(17px,1.65vw,22px)/1.5 var(--serif);max-width:400px}.hero-caption{font-size:13px;margin:12px 0 25px;max-width:360px;color:var(--muted)}.hero-content .button{min-width:min(100%,290px)}.hero-note{font-size:11px;color:var(--muted);margin:12px 0 0}.hero-marks{display:flex;align-items:center;gap:25px;margin-top:32px}.hero-marks img{width:62px;max-height:75px;object-fit:contain;mix-blend-mode:multiply}.hero-marks img:last-child{width:58px}.hero-next{position:absolute;left:22px;bottom:18px;display:flex;gap:25px;align-items:center;font-size:10px;text-decoration:none;letter-spacing:.06em;background:#f2ecdfed;padding:7px 13px}.section{max-width:var(--page);margin:0 auto;padding:95px 26px;scroll-margin-top:10px}.section-heading .eyebrow{margin-bottom:20px;color:var(--red)}.section-intro{max-width:640px;color:var(--muted);margin:25px 0 48px;line-height:1.8}.project-row{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center;margin-top:40px}.project-image{overflow:hidden}.project-image img{width:100%;height:390px;object-fit:cover}.project-image.portrait img{height:470px;object-position:50% 27%}.project-copy{max-width:400px}.project-copy .eyebrow{color:var(--red);margin-bottom:13px}.project-copy h3{font-size:48px;color:var(--red);letter-spacing:-.045em;margin-bottom:23px}.project-copy p:not(.eyebrow){font-size:15px;color:var(--muted)}.project-copy .text-link{margin-top:19px}.reverse{grid-template-columns:1fr 1.2fr;margin-top:70px}.reverse .project-image{grid-column:2;grid-row:1}.reverse .project-copy{grid-column:1;grid-row:1}.school-note{display:flex;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0;margin-top:70px;align-items:center}.school-note img{width:80px;mix-blend-mode:multiply;flex-shrink:0}.school-note h3{font-size:27px;margin-bottom:10px}.school-note p{font-size:14px;color:var(--muted);max-width:780px}.gallery{padding-top:50px}.horizontal{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.horizontal>p{font-size:13px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px 24px}.gallery-grid figure>img{width:100%;height:420px;object-fit:cover;object-position:center 30%}.gallery-grid .gallery-wide{grid-column:1/-1}.gallery-grid .gallery-wide img{height:auto;aspect-ratio:1.9;object-position:center 58%}figcaption{font-size:11px;color:var(--muted);padding-top:11px;line-height:1.6}.live-video{grid-column:1/-1;scroll-margin-top:130px}.video-wrap{background:#222320;display:grid;grid-template-columns:minmax(0,1fr) 1fr;align-items:center;color:#f5f0e6}.video-wrap video{display:block;width:100%;height:460px;object-fit:contain;background:#10110f}.video-caption{padding:38px}.video-caption .eyebrow{color:#dfb9a9;margin-bottom:22px}.video-caption h3{font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.04em}.video-caption>p:not(.eyebrow){font-size:14px;color:#d7d0c5;max-width:240px;margin-top:20px}.video-caption>span{display:block;font-size:9px;letter-spacing:.11em;margin-top:27px;color:#d7d0c5}.history{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:35px 70px}.event-list{list-style:none;margin:0;padding:0}.event-list li{padding:22px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;align-items:center;justify-content:space-between}.event-list li:first-child{padding-top:0}.event-list li:last-child{border-bottom:0}.event-list span{font:400 23px/1.25 var(--serif);letter-spacing:-.02em}.event-list small{font-size:9px;max-width:140px;flex-shrink:0}.pending{font:400 11px/1.6 var(--sans);color:#684a22;background:#edddb681;border-left:2px solid #b88a38;padding:7px 10px;overflow-wrap:anywhere}.history-note{grid-column:2;font-size:12px;color:var(--muted)}.format-options{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin-bottom:45px}.format-options article>span{font-size:10px;color:var(--red)}.format-options h3{font-size:33px;color:var(--red);margin:12px 0}.format-options p{font-size:13px;color:var(--muted);max-width:250px}.technical{display:grid;grid-template-columns:1fr 1.7fr;gap:45px}.technical>h3{font-size:29px;max-width:260px}.technical dl{margin:0}.technical dl>div{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:start;padding:15px 0;border-bottom:1px solid var(--line)}.technical dl>div:first-child{padding-top:0}.technical dt{font-size:13px}.technical dd{margin:0}.other-formats{border-bottom:1px solid var(--line);padding:32px 0;margin-top:15px}.other-formats>.eyebrow{color:var(--red);margin-bottom:12px}.other-formats>p:nth-child(2){font-family:var(--serif);font-size:24px}.other-formats>.pending{display:inline-block;margin-top:15px}.travel{display:flex;gap:30px;margin-top:40px}.travel>span{font:400 64px/1 var(--serif);color:var(--red)}.travel h3{font-size:29px;margin-bottom:14px}.travel p{font-size:14px;max-width:680px;color:var(--muted)}.contact{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{color:var(--red);font-size:clamp(45px,6vw,80px)}.contact>div:first-child>p:not(.eyebrow){margin-top:25px;max-width:410px;font-size:14px;color:var(--muted)}.contact-human{font-size:12px!important}.contact-action{padding-top:60px;align-self:center}.contact-action .button{width:100%;max-width:390px}.contact-action .pending{margin-top:16px;max-width:390px}.contact-action .text-link{margin-top:15px}.contact-place{font-size:12px;color:var(--muted);margin-top:25px}.site-footer{border-top:1px solid var(--line);display:flex;max-width:var(--page);margin:auto;gap:30px;justify-content:space-between;align-items:center;padding:26px}.site-footer p,.site-footer>a:last-child{font-size:11px;color:var(--muted)}.site-footer>a:last-child{text-decoration:none}.prototype-note{text-align:center;font-size:10px;padding:10px 20px;background:#e6dfd2;color:#5e5549}.school-home{display:grid;place-items:center;min-height:100svh;padding:35px 24px;text-align:center}.school-home main{max-width:480px}.school-home main>img{width:170px;margin:0 auto 25px;mix-blend-mode:multiply}.school-home h1{font-size:48px;margin:20px 0}.school-home .button{margin-top:32px}.school-home .eyebrow{color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){.hero{border-left:1px solid var(--line);border-right:1px solid var(--line)}}
@media(max-width:1000px){.site-header{padding:12px 25px}.site-header nav{gap:19px}.hero{min-height:700px}.hero-content{padding:47px 36px 40px}.hero h1{font-size:clamp(52px,8vw,84px)}.hero-marks{margin-top:24px}.section{padding:70px 30px}.project-row{gap:35px}.history{gap:30px}.technical{gap:25px}.technical dl>div{grid-template-columns:120px 1fr}.contact{gap:45px}.event-list span{font-size:20px}.site-footer{flex-wrap:wrap}}
@media(max-width:700px){html{scroll-padding-top:122px}.site-header{padding:10px 20px 0;gap:0;flex-wrap:wrap}.site-header .brand{margin-bottom:7px}.brand>span{font-size:11px}.brand small{font-size:6px}.site-header .brand img{width:37px;height:37px}.site-header nav{width:100%;justify-content:space-between;gap:10px;border-top:1px solid var(--line)}.site-header nav a{font-size:11px;padding:9px 0}.hero{grid-template-columns:29% 71%;min-height:615px}.hero-content{padding:30px 22px 30px}.hero .eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:22px}.hero h1{font-size:clamp(40px,10.5vw,68px);line-height:1.02;letter-spacing:-.055em;margin-bottom:22px}.hero h1 .plus{margin:7px 0 9px}.hero-intro{font-size:18px;line-height:1.4}.hero-caption{font-size:12px;line-height:1.65;margin:13px 0 22px}.hero-content .button{padding:13px 17px;font-size:12px;min-width:0;width:100%;gap:9px}.hero-note{font-size:10px}.hero-marks{gap:18px;margin-top:25px}.hero-marks img{width:44px;max-height:53px}.hero-marks img:last-child{width:40px}.hero-kanji{height:95%;right:8%;opacity:.05}.hero-images{grid-template-rows:46% 54%}.hero-taiko{object-position:62% 50%}.hero-yoroi{object-position:44% 38%}.hero-next{display:none}.section{padding:62px 23px}.section-heading .eyebrow{font-size:9px;margin-bottom:16px}.section-intro{font-size:14px;line-height:1.8;margin:23px 0 30px}.project-row,.reverse{display:flex;flex-direction:column;align-items:stretch;gap:27px;margin-top:32px}.reverse{margin-top:48px}.project-image img{height:auto;aspect-ratio:1.25;object-position:center 55%}.project-image.portrait img{height:370px;object-position:center 30%}.project-copy{max-width:none}.project-copy h3{font-size:40px;margin-bottom:15px}.project-copy p:not(.eyebrow){font-size:14px}.school-note{gap:18px;align-items:start;margin-top:43px;padding:25px 0}.school-note img{width:54px}.school-note h3{font-size:23px}.school-note p{font-size:13px}.horizontal{display:block;margin-bottom:28px}.horizontal>p{margin-top:18px;font-size:12px}.gallery{padding-top:20px}.gallery-grid{gap:25px 15px}.gallery-grid figure>img{height:230px}.gallery-grid .gallery-wide img{aspect-ratio:1.2;height:auto;object-position:center 55%}figcaption{font-size:10px}.video-wrap{grid-template-columns:1fr 1fr}.video-wrap video{height:310px}.video-caption{padding:20px 15px}.video-caption .eyebrow{font-size:8px;margin-bottom:15px}.video-caption h3{font-size:31px}.video-caption>p:not(.eyebrow){font-size:11px;line-height:1.65;margin-top:15px}.video-caption>span{font-size:8px;line-height:1.7;margin-top:18px}.history{display:block;margin:0 23px;padding:50px 0}.event-list{margin-top:33px}.event-list li{gap:16px;padding:21px 0}.event-list span{font-size:22px}.event-list small{max-width:115px;font-size:9px}.history-note{font-size:12px;margin-top:25px}.format-options{gap:17px;padding:25px 0;margin-bottom:32px}.format-options h3{font-size:24px;line-height:1.05;margin:10px 0}.format-options p{font-size:11px}.technical{display:block}.technical>h3{font-size:28px;max-width:none;margin-bottom:25px}.technical dl>div{grid-template-columns:105px 1fr;gap:12px}.technical dt{font-size:12px}.pending{font-size:10px}.other-formats>p:nth-child(2){font-size:21px}.travel{gap:16px;margin-top:30px}.travel>span{font-size:45px}.travel h3{font-size:25px}.travel p{font-size:13px}.contact{display:block;margin:0 23px;padding:50px 0}.contact h2{font-size:55px}.contact-action{padding-top:28px}.contact>div:first-child>p:not(.eyebrow){font-size:14px;margin-top:20px}.contact-action .button{max-width:none}.site-footer{margin:0 23px;padding:24px 0;gap:18px}.site-footer p{width:100%;order:3}.site-footer .brand img{width:40px;height:40px}.site-footer>a:last-child{font-size:10px}.prototype-note{font-size:9px}.text-link{font-size:12px}.school-home h1{font-size:44px}}
@media(max-width:360px){.hero-content{padding:27px 17px}.hero h1{font-size:37px}.hero-intro{font-size:16px}.hero-marks{gap:12px}.hero-marks img{width:36px}.hero-marks img:last-child{width:33px}.hero-content .button{font-size:11px;padding:12px}.video-wrap{grid-template-columns:1fr}.video-wrap video{height:350px}.video-caption{padding:25px}.event-list small{max-width:95px}.event-list span{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Asegura contraste en el botón y permite que el blanco de los JPG se funda con el papel. */
.button{background:linear-gradient(165deg,#cf4031,#ad3026)}
.hero-content{background:var(--paper) url('/assets/papel-700.webp') repeat;background-size:700px auto}
@media(max-width:700px){.site-header nav a{min-height:42px;display:flex;align-items:center;font-size:12px}}
.hero-images{min-width:0;min-height:0;grid-template-rows:minmax(0,.48fr) minmax(0,.52fr)}
.hero-images img{min-height:0}
@media(max-width:700px){.hero-images{grid-template-rows:minmax(0,.46fr) minmax(0,.54fr)}}
