/* Production adapters for the CC-Software design system v1.0.0.
   Shared foundations are copied verbatim from the approved iCloud kit.
   Compact service illustrations retain their own intentionally miniature styling. */
:root{--paper:var(--cc-color-paper);--ink:var(--cc-color-ink);--muted:var(--cc-color-muted);--line:var(--cc-color-line);--accent:var(--cc-color-accent);--pale:var(--cc-color-pale);--radius:var(--cc-radius-card)}
body{font-family:var(--cc-font-sans);background:var(--cc-surface);color:var(--cc-text)}
.frame{max-width:var(--cc-content-width);padding-inline:var(--cc-space-48)}
.section-pad{padding-block:var(--cc-space-96)}
.hero-foot{margin-inline:-48px;padding-inline:48px;font-size:12px;line-height:1.5;color:var(--cc-secondary)}
.eyebrow,.small-label{font-family:var(--cc-font-mono);font-size:12px;letter-spacing:1.25px;line-height:1.5}
.eyebrow .orange,.eyebrow.orange{color:var(--cc-link)}
.button{min-height:44px;font-size:14px;border-radius:var(--cc-radius-control);padding:12px 18px;transition:background var(--cc-duration-fast),transform var(--cc-duration-fast),box-shadow var(--cc-duration-fast)}
.button.primary{background:var(--cc-color-ink);border-color:var(--cc-color-ink);color:var(--cc-color-white)}
.text-link{font-size:14px}.text-link:hover,.site-header nav a:hover,.contact-email:hover{color:var(--cc-link)}
.site-header nav a{font-size:14px}.language-switch{font-size:12px}
.service-grid,.portfolio-grid{gap:var(--cc-space-24)}
.service-card,.portfolio-card,.brief-form{border-color:var(--cc-border);border-radius:var(--cc-radius-card)}
.service-copy,.scope-card .service-copy,.portfolio-content{padding:var(--cc-space-32)}
.service-copy p,.scope-card p,.portfolio-content p{font-size:16px;line-height:1.65;color:var(--cc-secondary)}
.service-number,.service-copy .tags span,.scope-card .tags span,.portfolio-note,.portfolio-footnote,.art-caption{font-size:12px;line-height:1.5;color:var(--cc-secondary)}
.service-link,.scope-card .service-link{min-height:44px;font-size:14px;line-height:1.5}
.portfolio-link span,.cv-monogram span,.duel-centre{color:var(--cc-color-accent)}
.portfolio-card{background:var(--cc-panel)}.portfolio-art{border-color:var(--cc-border)}
.scope-card h3,.portfolio-content h3{font-size:28px;line-height:1.2}
.approach{background:var(--cc-surface);color:var(--cc-text)}
.approach-inner{border-color:var(--cc-border);padding-block:var(--cc-space-96)}
.approach .eyebrow,.approach .eyebrow>span,.step-index,.step .small-label{color:var(--cc-secondary);font-size:12px}
.approach em{color:var(--cc-link);font-family:var(--cc-font-editorial)}
.approach-intro p,.step p{font-size:16px;color:var(--cc-secondary)}
.step{opacity:1;border-color:var(--cc-border)}.step h3{font-size:28px;color:var(--cc-text)}
.light-link:hover{color:var(--cc-link)}
.questions summary{min-height:44px;font-size:16px}.questions details p{font-size:16px;color:var(--cc-secondary)}
.contact-copy p,.contact-email{font-size:16px}
.contact-fields label,.brief-form legend,.details-label{font-size:14px}
.contact-fields input,.brief-form textarea{min-height:44px;font-size:16px;border:1px solid var(--cc-secondary);border-radius:var(--cc-radius-control);padding:12px;background:var(--cc-panel);color:var(--cc-text)}
.interest-options label span{min-height:44px;display:flex;align-items:center;font-size:12px;border-color:var(--cc-secondary);border-radius:var(--cc-radius-control)}
.interest-options input:checked+span{background:var(--cc-tint);border-color:var(--cc-link);color:var(--cc-link)}
.form-note,#form-status,.registry-link{font-size:14px;line-height:1.65;color:var(--cc-secondary)}
.footer-top>span,.footer-bottom{font-size:14px;color:var(--cc-secondary)}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible,select:focus-visible,.contact-fields input:focus{outline:2px solid var(--cc-focus);outline-offset:4px}
.reveal{transition-duration:var(--cc-duration-reveal);transition-timing-function:var(--cc-ease)}
@media(max-width:1100px){.nav-cta{display:none}.nav-wrap{gap:24px}}
@media(max-width:760px){.frame{padding-inline:var(--cc-space-24)}.section-pad,.approach-inner{padding-block:var(--cc-space-64)}.service-grid,.portfolio-grid{grid-template-columns:1fr}.service-copy,.scope-card .service-copy,.portfolio-content{padding:var(--cc-space-24)}.scope-card:last-child .service-copy{display:block}.service-number,.scope-card .service-number{font-size:12px}.hero-foot{margin-inline:-24px;padding-inline:24px}.portfolio-content h3,.scope-card h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}.button:hover{transform:none}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.language-switch a[aria-current=page]{color:var(--cc-link)}
.privacy-button{font-size:14px;min-height:44px}
#contact-challenge{margin:20px 0;min-height:65px;max-width:100%}
