/* Full compositions, warm contrast and a visual explanation of the method. */
:root{--ink:#28251f;--muted:#686154;--bronze:#88633f;--line:#cdc4b6;--dark:#25221d}
.page-top{background:radial-gradient(ellipse at 50% 0%,#fffaf1a6,transparent 72%)}
.text-link{border-bottom-color:#a99a85}.text-link:hover{color:#684727}
.dark-button{background:var(--dark);color:var(--light)}
.service-block{grid-template-columns:1.2fr .8fr;gap:6vw;padding:65px 0}
.service-block:nth-child(even){grid-template-columns:.8fr 1.2fr}
.service-block>*{min-width:0}
/* Explicit height attributes otherwise force portrait boxes at smaller widths. */
img.service-photo{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;display:block}
.motion-media.service-photo{height:auto;aspect-ratio:16/9}
.service-body .eyebrow{line-height:1.8;color:var(--bronze)}
.service-body h2{font-size:clamp(38px,4.3vw,65px);line-height:1.05}
.service-body ul{padding-left:18px}.service-body li{padding-bottom:5px}
.space-grid{grid-template-columns:1fr 1fr;gap:65px 4vw}
.space-card:nth-child(2n){padding-top:75px}
.space-image{background:transparent;border:0;line-height:0}
.space-image img,.space-card:nth-child(2n) .space-image img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.space-image .image-open{line-height:1}
.space-image:hover img,.study-card:hover img{transform:none}
.space-image:hover .image-open{background:var(--ink);color:var(--light)}
.study-card>div,.featured-visual{background:transparent}
.study-card img,.featured-visual img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.study-hero{background:transparent}.study-hero>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1672/941;object-fit:contain}
.study-detail{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;background:transparent}
.space-meta>span,.image-caption,.small-note{color:var(--muted)}
.brand-values,.atelier-philosophy,.next-study{background:#e3dbce}
.brand-principles li,.service-preview,.craft-capability-grid article{border-top-color:#bdb09b}
.service-preview:hover .preview-arrow{transform:translate(4px,-4px)}.preview-arrow{transition:transform .3s}
.contact-section{background:radial-gradient(ellipse at 50% 100%,#ded1ba80,transparent 70%),var(--paper)}
.method-page{padding-top:20px}
.method-experience{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:start}
.method-visual-column{position:sticky;top:112px;min-width:0}
.method-visual{background:var(--dark);color:var(--light);padding:14px 14px 18px}
.method-stage{position:relative;aspect-ratio:1.02;overflow:hidden}
.method-frame{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}
.method-frame.is-current{opacity:1;visibility:visible;z-index:1}
.method-frame>.motion-media,.method-frame>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.method-frame .motion-media>img,.method-frame .motion-media>video{object-fit:contain}
.method-frame figcaption{padding:26px 18px 18px}
.method-frame .eyebrow{color:#cfb08b;font-size:9px;letter-spacing:.13em}
.method-frame h2{font-size:clamp(32px,3.5vw,52px);line-height:1.03;margin:15px 0 12px;max-width:440px}
.method-frame p{color:#d7ccbc;font-size:11px;max-width:390px}
.method-progress{display:flex;gap:8px;margin:20px 18px 0}
.method-progress>span{flex:1;border-top:2px solid #756956;padding-top:10px;font-size:9px;color:#b2a38d;transition:color .4s,border-color .4s}
.method-progress>.is-current{color:#f4e4ca;border-color:#d3ad7a}
.method-media-note{font-size:8px;color:#c9bdab;margin:20px 18px 0}
.method-guide{display:block;margin:0 0 24px;line-height:1.8;color:var(--bronze);font-size:9px}
.method-steps{min-width:0}.method-page .method-list{max-width:none;margin:0}
.method-page .method-list summary h2{font-size:clamp(34px,3.8vw,54px);line-height:1.1;margin:0}
.method-page .method-list details>div{padding-right:0}.method-page .method-list summary{padding:22px 0}
.method-page .method-list details[open] summary h2{color:var(--bronze)}
.method-mobile-visual{display:none}
.method-page>.motion-toggle{margin:30px 0 0 auto;font-size:9px}
@media(min-width:768px) and (max-width:1100px){.method-stage{aspect-ratio:.8}.method-frame figcaption{padding:22px 10px}.method-frame h2{font-size:35px}.method-experience{gap:4vw}.method-page .method-list details>div{padding-left:25px}.method-progress,.method-media-note{margin-left:10px;margin-right:10px}}
@media(max-width:767px){
 .service-block,.service-block:nth-child(even){display:flex;gap:26px;padding:35px 0}
 .service-photo{flex:none}.service-body h2{font-size:40px;max-width:450px;margin-left:auto;margin-right:auto}
 .service-body p{max-width:420px;margin-left:auto;margin-right:auto}.service-body .eyebrow{font-size:8px}
 .space-grid{display:block}.space-card:nth-child(2n){padding-top:0}.space-card{margin-bottom:40px}
 .space-meta>span{max-width:42%;text-align:right;line-height:1.6}
 .method-page{padding-top:0}.method-experience{display:block}.method-visual-column{display:none}
 .method-guide{text-align:center;margin-bottom:28px}.method-page .method-list summary h2{font-size:36px}
 .method-page .method-list details>div{padding:0 0 24px}.method-page .method-list details p{max-width:400px;margin:0 auto;text-align:center;font-size:12px}
 .method-page .method-list ul{max-width:330px;margin:15px auto 0;font-size:11px;padding-left:20px}
 .method-mobile-visual{display:block;margin:0 0 24px;background:var(--dark);color:var(--light)}
 .method-mobile-visual>.motion-media,.method-mobile-visual>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
 .method-mobile-visual figcaption{font-size:10px;line-height:1.8;text-align:center;padding:14px 18px}
 .method-page>.motion-toggle{margin:22px auto 0}.method-page>.motion-toggle:after{content:' · Recursos conceptuais IA';font-size:8px}
}
@media(prefers-reduced-motion:reduce){.method-frame,.method-progress>span,.preview-arrow{transition:none}}

.method-page .method-list details:not([open])>div{display:none}
