/*
File: promotion/style.css
Description: Responsive promotion layout following Design Office Identity
Author: 5garashi.com Design Office
Created: 2026-10-12
Version: 1.1.0
License: MIT
SPDX-License-Identifier: MIT
*/
:root{--paper:#F9EFCB;--head:#FFE699;--ink:#385723;--steel:#7B4A21;--volt:#B92613;--volt-deep:#8C1B0D;--card:#FFFDF2;--line:#DFCF9A;--ok:#3E6B2A;--cream:#FFF3D6;--mark:#B92613}
/* Text pairs use Identity tables 7-1 and 7-1 supplement; calculated ratios are in IDENTITY-CHECK.md. */
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Hiragino Sans','Noto Sans JP','Yu Gothic',Meiryo,sans-serif;font-size:1rem;font-weight:600;line-height:1.7}
html[lang=en] body{font-family:'Segoe UI',-apple-system,BlinkMacSystemFont,'Noto Sans','Hiragino Kaku Gothic ProN','Noto Sans JP','Yu Gothic',Meiryo,sans-serif}
a{color:var(--ink);text-underline-offset:.25em;overflow-wrap:anywhere;display:inline-flex;align-items:center;padding:.4rem .15rem;min-height:44px;min-width:44px}a:hover{text-decoration-thickness:3px}:focus-visible{outline:3px solid var(--volt);outline-offset:4px}
h1,h2,h3{font-weight:800;line-height:1.35;overflow-wrap:anywhere;margin:0 0 .7em}h1{font-size:clamp(2rem,3.7vw,3.2rem);letter-spacing:.04em}h2{font-size:clamp(1.5rem,2.5vw,2rem)}h3{font-size:1.25rem}p{margin:0 0 1rem;overflow-wrap:anywhere}img{max-width:100%;height:auto}
.site-header{background:var(--head);border-bottom:3px solid var(--ink)}.header-inner{max-width:1168px;margin:auto;display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:0 24px}.brand{padding:28px;margin-left:-28px;flex-shrink:0}.brand img{width:140px;display:block}.brand-mark{width:36px;margin:28px;flex-shrink:0}nav{margin-left:auto;display:flex;flex-wrap:wrap;gap:1rem}
main,footer{max-width:1168px;margin:auto;padding:0 24px}section{margin:0 0 4rem}.hero{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:2.5rem;padding-top:3rem}.eyebrow{color:var(--steel);font-size:.875rem;font-weight:700;letter-spacing:.06em;margin-bottom:.75rem}.lead{font-size:1.125rem}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 1rem}.button{padding:.7rem 1rem;border:2px solid var(--ink);text-decoration:none;border-radius:4px;justify-content:center}.primary{background:var(--ink);color:var(--paper)}.note,figcaption{color:var(--steel);font-size:.875rem;font-weight:700}figure{margin:0;min-width:0}.app-figure img{display:block;width:100%;border:1px solid var(--line)}.image-link{padding:0;display:block}figcaption{padding-top:.75rem}
.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-top:1px solid var(--line);padding-top:2rem}.features h2{font-size:1.25rem}.features p{margin-bottom:0}.section-heading{max-width:760px;margin-bottom:1.5rem}.demo{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:2rem}video{display:block;width:100%;aspect-ratio:16/9;background:var(--paper)}.media-links{display:flex;flex-wrap:wrap;gap:1rem;margin:.75rem 0}details{margin:1rem 0;border-top:1px solid var(--line);padding-top:.5rem}summary{cursor:pointer;padding:.5rem .15rem;font-weight:800;overflow-wrap:anywhere;min-height:44px}details ol{margin-top:.75rem}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;padding-left:1.5rem;margin:1.5rem 0 2rem}.steps li{padding-left:.25rem}.steps strong,.steps span{display:block}.steps strong{font-weight:800;margin-bottom:.5rem}.sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-bottom:1rem}.sample-card{background:var(--card);padding:1.5rem;border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column;min-width:0}.sample-download{border:2px solid var(--ink);border-radius:4px;padding:.65rem .75rem;margin-top:auto;justify-content:center}.privacy{max-width:800px}.office{background:var(--head);padding:2rem;border-top:3px solid var(--ink)}.office p:not(.eyebrow){max-width:760px}footer{border-top:1px solid var(--line);padding-top:1.5rem;padding-bottom:2rem}footer a{margin-right:1rem}.version{font-family:ui-monospace,monospace;font-weight:800;color:var(--volt-deep);white-space:nowrap}.skip{position:absolute;left:1rem;top:-200px;background:var(--card);padding:1rem;z-index:5}.skip:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:1.5rem}.features,.sample-grid,.steps{grid-template-columns:1fr;gap:1.5rem}.app-figure{max-width:900px}}
@media(max-width:480px){main,footer{padding-left:16px;padding-right:16px}.header-inner{padding:0 16px;gap:0}.brand{margin-left:-12px;padding:28px 12px 28px 28px}.brand-mark{margin:28px 16px;width:28px}nav{width:100%;order:3;margin:0 0 1rem;gap:1.5rem}.hero{padding-top:2rem}.demo,.office{padding:1.25rem}.sample-card{padding:1.25rem}section{margin-bottom:3rem}}
@media screen and (prefers-color-scheme:dark){:root{--paper:#1A2212;--card:#222C1A;--head:#2B3A20;--ink:#C9C1A5;--steel:#D9B98C;--volt:#F07B5F;--volt-deep:#F7A58E;--line:#4C5C3B;--ok:#9FCC7E;--cream:#1A2212;--mark:#ADADA5}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){body,.site-header,.sample-card,.demo,.office{background:Canvas;color:CanvasText}a{color:LinkText}.button,.sample-download{color:ButtonText;background:ButtonFace;border-color:ButtonText}.site-header,.features,.office,footer,details{border-color:CanvasText}:focus-visible{outline-color:Highlight}.note,.eyebrow,figcaption,.version{color:CanvasText}.brand img,.brand-mark{forced-color-adjust:none}}
@media print{html,body{background:#FFFDF2}body{color:#385723}.hero{display:block}.features,.sample-grid,.steps{display:block}.features article,.sample-card{margin-bottom:1rem}video,.media-links,.skip,nav{display:none}.app-figure{max-width:700px}.button{color:#385723;background:#F9EFCB}section{break-inside:avoid;margin-bottom:2rem}}
/* Silent video controls: ink/card 8.05:1, volt-deep/paper 8.01:1 (official table 7-1). */
[hidden]{display:none!important}.player-controls{margin-top:1rem}.play-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}button{min-width:44px;min-height:44px;border:2px solid var(--ink);border-radius:4px;padding:.65rem .9rem;background:var(--card);color:var(--ink);font:inherit;cursor:pointer}.player-clock{font:800 .875rem ui-monospace,monospace;color:var(--volt-deep);white-space:nowrap}.seek-label{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;min-height:44px;margin-top:.75rem}input[type=range]{flex:1 1 180px;min-width:0;height:44px;accent-color:var(--ink)}.player-error{border:2px solid var(--ink);padding:1rem;margin-top:1rem}
@media(forced-colors:active){button,input{border-color:ButtonText;color:ButtonText;background:ButtonFace}.player-clock{color:CanvasText}}
@media print{.player-controls{display:none}}
.video-stage:fullscreen{background:var(--paper);padding:16px;display:flex;flex-direction:column}.video-stage:fullscreen video{flex:1;min-height:0;width:100%;object-fit:contain}.video-stage:fullscreen .player-controls{flex-shrink:0}
