/* The opening establishes two surfaces: warm paper and ink. Continue them. */
.journey { background:var(--cream); color:var(--black); padding-top:0; padding-bottom:var(--section-pad); }
.journey-inner { max-width:1600px; border-top:1px solid rgba(var(--black-rgb),.16); padding-top:clamp(2rem,4vw,3.5rem); }
.journey-time { color:#a34036; }
.journey-toggle { color:#59514d; border-color:#c5bcb5; }
.journey-toggle:hover { background:rgba(var(--black-rgb),.05); }
.journey-index { color:#706761; }
.journey-copy p { color:rgba(var(--black-rgb),.62); }
.journey-visual { color:#554c46; }
.drawing-idea circle { fill:var(--cream); stroke:#ad5146; }
.shoot-dot { fill:#b65145; }.shoot-ring, .delivery-tick { stroke:#b65145; }
.journey-piece { border-color:#81746b; background:repeating-linear-gradient(90deg,#8f80752b 0,#8f80752b 22px,var(--cream) 22px,var(--cream) 24px); }
.piece-out { border-color:#b65145; }
.journey-blade { background:#b65145; }
.journey-drawing > .journey-wave { stroke:#81746b!important; }
.journey-rail { border-color:#beb3a9; }
.journey-ticks { background:repeating-linear-gradient(90deg,#84766d 0,#84766d 1px,transparent 1px,transparent 12px); }
.journey-progress, .journey-head, .journey-head i { background:#b65145; }
.journey-head { box-shadow:0 0 12px #b651451a; }
.journey-stops button, .journey-stops button span { color:#80746b; }
.journey-stops button[aria-current] { color:var(--black); }
.journey-stops button[aria-current] span { color:#a34036; }
.journey-stage-flash { background:linear-gradient(90deg,#b65145,transparent 80%); }
.journey button:focus-visible { outline-color:var(--black); }

.projects, .reels-section, .marquee-section { background:var(--black); color:var(--cream); }
.projects { padding-bottom:clamp(3rem,6vw,6rem); }
.projects-intro { max-width:1600px; margin-left:auto; margin-right:auto; }
.portfolio-caption { border-bottom:1px solid rgba(var(--cream-rgb),.13); padding-bottom:1rem; margin-bottom:1.2rem; }
.bento-item, .reel-card { border-radius:var(--radius); }
.reels-section { border:0; padding-top:clamp(3rem,6vw,6rem); }
.reels-container { border-top:1px solid rgba(var(--cream-rgb),.15); padding-top:clamp(3rem,6vw,5rem); }
.reels-center-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:2rem; text-align:left; margin-bottom:2.5rem; }
.reels-title-block { text-align:left; margin:0; }
.reels-title-dark { color:var(--cream); font-size:clamp(2rem,5vw,4.5rem); line-height:1.08; }
.reels-subtitle-dark { color:rgba(var(--cream-rgb),.6); margin:.9rem 0 0; }
.live-social-numbers { width:auto; max-width:none; gap:1.8rem; }
.social-stat-item { color:var(--cream); padding:0; }
.stat-counter { font-size:clamp(1.8rem,3vw,2.7rem); color:var(--cream); }
.stat-network-row { color:var(--cream); font-size:.78rem; }
.stat-label-text { color:rgba(var(--cream-rgb),.5); font-size:.7rem; }
.social-stat-divider { background:rgba(var(--cream-rgb),.18); height:40px; }
.social-stat-item:hover .stat-counter, .social-stat-item:hover .stat-label-text { color:var(--cream); }
.stat-icon-insta, .stat-icon-tiktok, .reel-tiktok-icon, .reel-insta-icon { color:inherit; }
.reels-carousel-container { max-width:none; padding:0; }
.reels-carousel-track { gap:var(--gap); padding:0; }
.reel-card { border-color:rgba(var(--cream-rgb),.15); background:var(--black); }
.reel-card:hover { border-color:rgba(var(--cream-rgb),.4)!important; box-shadow:0 20px 45px #0005!important; }
.marquee-section { border-block:1px solid rgba(var(--cream-rgb),.15); box-shadow:none; padding-block:1.6rem; }
.marquee-item { color:var(--cream); font-weight:600; letter-spacing:.025em; }
.marquee-accent { background:none; color:var(--cream); -webkit-text-fill-color:var(--cream); filter:none; }
.marquee-outline { -webkit-text-stroke:1px rgba(var(--cream-rgb),.6); }
.marquee-spark { color:rgba(var(--cream-rgb),.5); filter:none; }

.contact { min-height:0; padding-top:var(--section-pad); }
.contact-inner { max-width:1600px; }
.contact-form-card { background:rgba(var(--black-rgb),.025); border-color:rgba(var(--black-rgb),.14); border-radius:var(--radius); box-shadow:none; backdrop-filter:none; }
.contact-badge-item, .contact-link { background:transparent; border-color:rgba(var(--black-rgb),.15); border-radius:var(--radius); box-shadow:none; }
.contact-badge-item:hover, .contact-link:hover { background:rgba(var(--black-rgb),.04); color:var(--black); }
.contact-badge-item:hover .badge-icon-wrap { background:var(--black); }
.contact-badge-item:hover .badge-arrow { color:var(--black); }
.form-input { border-radius:8px; background:rgba(255,255,255,.35); }
.form-input:focus { border-color:#69605a; box-shadow:0 0 0 3px rgba(var(--black-rgb),.07); }
.form-req { color:inherit; }
.contact-submit-btn:hover { background:#30302e; border-color:#30302e; }
.contact a:focus-visible { outline-color:var(--black); }
.footer { margin-top:clamp(3rem,6vw,6rem); border-top:1px solid rgba(var(--black-rgb),.14); }
.footer-legal-link:hover { color:var(--black); }
.projects a:focus-visible, .projects .bento-item:focus-visible, .reels-section a:focus-visible { outline-color:var(--cream); }
@media(max-width:1000px) { .reels-center-header { grid-template-columns:1fr; gap:1.7rem; }.live-social-numbers { justify-content:flex-start; }.social-stat-item { align-items:flex-start; text-align:left; }.stat-meta { align-items:flex-start; } }
@media(max-width:700px) {
 .journey { padding:0 var(--page-pad) var(--section-pad); }
 .journey-inner { padding-top:2rem; }
 .reels-center-header { gap:1.8rem; }
 .live-social-numbers { flex-direction:row; width:auto; gap:1.8rem; }
 .social-stat-divider { display:block; }
 .reels-carousel-track { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .contact-form-card { border-radius:var(--radius); }
}

/* An inset paper panel gives short formats their own space inside the gallery. */
.projects { padding-bottom:clamp(1.5rem,2.5vw,2.5rem); }
.reels-section { width:calc(100% - 2 * var(--page-pad)); max-width:1600px; margin:clamp(1rem,2vw,2rem) auto clamp(3rem,7vw,7rem); padding:clamp(1.5rem,3vw,3rem); border-radius:20px; background:var(--cream); color:var(--black); }
.reels-container { position:relative; border:0; padding:0; }
.reels-title-dark { color:var(--black); text-shadow:none; font-size:clamp(1.8rem,3.6vw,3.5rem); max-width:18ch; }
.reels-subtitle-dark { color:rgba(var(--black-rgb),.58); max-width:46ch; }
.reels-section .stat-counter, .reels-section .stat-network-row, .reels-section .social-stat-item { color:var(--black); }
.reels-section .stat-counter { font-size:clamp(1.5rem,2.5vw,2rem); }
.reels-section .stat-label-text { color:rgba(var(--black-rgb),.5); }
.reels-section .social-stat-item:hover .stat-counter, .reels-section .social-stat-item:hover .stat-label-text { color:var(--black); }
.reels-section .social-stat-divider { background:rgba(var(--black-rgb),.15); }
.reels-section .reels-center-header { padding-bottom:1.8rem; margin-bottom:1.8rem; border-bottom:1px solid rgba(var(--black-rgb),.14); }
.reel-card { box-shadow:none; border-color:rgba(var(--black-rgb),.14); }
.reels-section a:focus-visible { outline-color:var(--black); }
@media(max-width:700px) { .reels-section { width:calc(100% - 24px); padding:1.3rem; border-radius:16px; }.reels-section .reels-center-header { gap:1.3rem; padding-bottom:1.4rem; margin-bottom:1.3rem; }.reels-title-dark { font-size:1.9rem; }.reels-section .live-social-numbers { gap:1.3rem; }.reels-section .reel-title { font-size:.72rem; } }

/* Introduction and process form one paper panel, matching the short formats. */
.intro-panel { width:calc(100% - 2 * var(--page-pad)); max-width:1600px; margin:clamp(1rem,2vw,2rem) auto 0; border-radius:20px; overflow:hidden; background:var(--cream); color:var(--black); }
.intro-panel .about { padding:clamp(3rem,6vw,6rem) clamp(2rem,4vw,4rem); }
.intro-panel .about-label { margin-bottom:clamp(2.5rem,4vw,4rem); }
.intro-panel .about-content { display:grid; grid-template-columns:1.05fr 1fr; column-gap:clamp(3rem,6vw,6rem); row-gap:2rem; margin-bottom:clamp(3rem,5vw,5rem); }
.intro-panel .about-title { grid-row:span 2; margin-bottom:0; font-size:clamp(2rem,4.5vw,4.2rem); }
.intro-panel .about-text { font-size:clamp(.95rem,1.1vw,1.1rem); max-width:52ch; line-height:1.9; }
.intro-panel .about-note { margin-top:0; }
.intro-panel .about-skills { gap:.8rem; }
.intro-panel .skill-tag { font-size:.75rem; padding:.65rem 1.1rem; }
.intro-panel .journey { padding:0 clamp(1.5rem,3vw,3rem) clamp(1.5rem,3vw,3rem); }
.intro-panel .journey-inner { padding-top:0; border-top:0; }
.intro-panel .about { padding-bottom:clamp(3rem,5vw,5rem); }
.intro-panel .journey-top { gap:1rem; }
.intro-panel .journey-time { order:0; flex-shrink:0; font-size:14px; }
.intro-panel .journey-top::after { content:''; order:1; flex:1; height:1px; background:linear-gradient(90deg,#b6514560,rgba(var(--black-rgb),.14) 18%); }
.intro-panel .journey-toggle { order:2; flex-shrink:0; width:28px; height:28px; padding:7px; }
@media(max-width:850px) {
 .intro-panel .about-content { grid-template-columns:1fr; gap:1.6rem; }
 .intro-panel .about-title { grid-row:auto; max-width:20ch; margin-bottom:.6rem; }
}
@media(max-width:700px) {
 .intro-panel { width:calc(100% - 24px); border-radius:16px; }
 .intro-panel .about { padding:2.5rem 1.5rem; }
 .intro-panel .about-label { margin-bottom:2rem; }
 .intro-panel .about-content { margin-bottom:2.5rem; }
 .intro-panel .about-text { line-height:1.85; }
 .intro-panel .journey { padding:0 1.3rem 1.7rem; }
 .intro-panel .about-title { font-size:clamp(1.8rem,7vw,2.3rem); }
 .intro-panel .skill-tag { font-size:.7rem; padding:.6rem .85rem; }
 .intro-panel .journey-copy h2 { font-size:clamp(2rem,9vw,2.8rem); }
 .intro-panel .journey-copy p { font-size:.75rem; }
 .intro-panel .journey-stops { gap:5px; }
 .intro-panel .journey-stops button { font-size:8px; }
}

/* A paper introduction followed by an open timeline on the page itself. */
.intro-panel { display:grid; gap:clamp(18px,2.4vw,32px); background:transparent; border-radius:0; overflow:visible; }
.intro-panel .about { border-radius:20px; overflow:hidden; }
.intro-panel .journey { --journey-surface:var(--black); background:transparent; color:var(--cream); border:0; border-radius:0; padding:clamp(2rem,4vw,4rem) clamp(1.5rem,3vw,3rem); overflow:hidden; }
.intro-panel .journey-inner { padding-top:0; border:0; }
.intro-panel .journey-top::after { display:none; }
.intro-panel .journey-toggle { margin-left:auto; color:#c9beb6; border-color:#75675e; }
.intro-panel .journey-toggle:hover { background:#ffffff0a; }
.intro-panel .journey-time { color:#f18b7b; }
.intro-panel .journey-index { color:#b1a49b; }
.intro-panel .journey-copy p { color:#c2b8b0; }
.intro-panel .journey-visual { color:#ded0c5; }
.intro-panel .drawing-idea circle { fill:var(--journey-surface); stroke:#f18b7b; }
.intro-panel .shoot-dot { fill:#f18b7b; }
.intro-panel .shoot-ring, .intro-panel .delivery-tick { stroke:#f18b7b; }
.intro-panel .journey-piece { border-color:#b5a296; background:repeating-linear-gradient(90deg,#c7ad9b26 0,#c7ad9b26 22px,var(--journey-surface) 22px,var(--journey-surface) 24px); }
.intro-panel .piece-out { border-color:#f18b7b; }
.intro-panel .journey-blade { background:#f18b7b; }
.intro-panel .journey-drawing > .journey-wave { stroke:#b5a296!important; }
.intro-panel .journey-rail { border-color:#8d7a6d; }
.intro-panel .journey-ticks { background:repeating-linear-gradient(90deg,#b49e8e 0,#b49e8e 1px,transparent 1px,transparent 12px); }
.intro-panel .journey-progress, .intro-panel .journey-head, .intro-panel .journey-head i { background:#f18b7b; }
.intro-panel .journey-stops button, .intro-panel .journey-stops button span { color:#b6a79c; }
.intro-panel .journey-stops button[aria-current] { color:var(--cream); }
.intro-panel .journey-stops button[aria-current] span { color:#f18b7b; }
.intro-panel .journey-stage-flash { background:linear-gradient(90deg,#f18b7b,transparent 80%); }
.intro-panel .journey button:focus-visible { outline-color:var(--cream); }
@media(max-width:700px) { .intro-panel .about { border-radius:16px; }.intro-panel .journey { border-radius:0; padding:2rem 1.3rem; } }

.journey-details { display:grid; grid-template-columns:repeat(var(--detail-columns,3),minmax(0,1fr)); gap:14px; margin-top:clamp(2rem,4vw,3.5rem); }
.journey-details .journey-detail[hidden] { display:none; }
.journey-detail { display:flex; flex-direction:column; position:relative; min-height:215px; padding:clamp(1.3rem,2.3vw,2rem); border:1px solid #9e4c43; border-radius:14px; background:#7e342e; color:#fff0e6; outline-offset:5px; transition:background .25s,border-color .25s; }
.journey-detail:nth-child(2) { background:#682d29; border-color:#8d4640; }
.journey-detail:nth-child(3) { background:#502622; border-color:#78413b; }
.detail-index { display:block; font:9px var(--font-display); letter-spacing:.1em; color:#edc0b5; margin-bottom:clamp(1.8rem,3vw,2.8rem); }
.journey-detail h3 { font:500 clamp(1.1rem,1.8vw,1.6rem)/1.2 var(--font-display); letter-spacing:-.03em; margin-bottom:.8rem; }
.journey-detail p { font-size:clamp(.82rem,1vw,.95rem); line-height:1.7; color:#f2d4cb; max-width:32ch; margin-top:auto; }
.journey-detail:hover, .journey-detail:focus-visible { border-color:#e2a092; background:#8b3a32; }
.journey-detail:focus-visible { outline:2px solid #f18b7b; }
@media(max-width:700px) { .journey-details { grid-template-columns:1fr; gap:10px; }.journey-detail { min-height:0; padding:1.3rem; }.detail-index { margin-bottom:1.3rem; }.journey-detail h3 { font-size:1.35rem; }.journey-detail p { max-width:none; font-size:.85rem; } }
@media(prefers-reduced-motion:reduce) { .journey-detail { transition:none; } }

.hero-gallery-c .hero-field-photo { object-position:center 72%; }
.bento-photo .bento-img img { object-position:center 65%; }
.modal-tag[hidden] { display:none; }
.modal-gallery-item { padding:0; text-align:left; color:inherit; font:inherit; }
.modal-gallery-item.photo-portrait img { object-fit:contain; }
.modal-gallery-item:focus-visible { outline:2px solid var(--cream); outline-offset:3px; }

/* A quiet project brief, with the same warm red as the editing sequence. */
.contact-form-card { --form-accent:#843b32; padding:clamp(1.6rem,3.5vw,3.5rem); border:1px solid #ded5cb; border-radius:20px; background:#faf7f2; box-shadow:0 16px 40px -28px #33271e40; overflow:hidden; }
.contact-form-card::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--form-accent); }
.form-card-header { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding-bottom:1.8rem; margin-bottom:2rem; border-bottom:1px solid #dfd7ce; }
.form-card-title { font-size:clamp(1.8rem,3vw,2.8rem); font-weight:500; line-height:1.06; letter-spacing:-.05em; }
.form-card-mark { display:grid; place-items:center; flex-shrink:0; width:60px; height:60px; border:1px solid #c9a59a; border-radius:50%; color:var(--form-accent); font:400 32px var(--font-display); transform:rotate(-8deg); }
.contact-form { gap:1.5rem; }
.form-grid-2 { gap:1.2rem; min-width:0; }
.form-group { gap:.65rem; min-width:0; }
.form-label { font-size:.78rem; font-weight:600; color:#514942; }
.form-req { color:var(--form-accent); }
.form-input { min-height:52px; padding:1rem; border:1px solid #ded5cb; border-radius:9px; background:#f0ebe4; color:#28241f; transition:background .2s,border-color .2s,box-shadow .2s; }
.form-input::placeholder { color:#82776e; font-size:.82rem; }
.form-input:hover { border-color:#b8a79b; }
.form-input:focus { border-color:var(--form-accent); background:#fffdf9; box-shadow:0 0 0 3px #843b3212; }
.form-group:focus-within .form-label { color:var(--form-accent); }
.form-textarea { min-height:150px; line-height:1.7; }
.form-bottom { display:flex; flex-direction:column; align-items:stretch; gap:1.1rem; margin-top:.25rem; }
.contact-submit-btn { justify-content:space-between; width:100%; padding:1rem 1.3rem; border-radius:10px; background:var(--form-accent); border-color:var(--form-accent); color:#fff4eb; box-shadow:none; }
.contact-submit-btn .submit-btn-arrow { font-size:1.4rem; }
.contact-submit-btn:hover { background:#682d27; border-color:#682d27; box-shadow:none; }
.contact-submit-btn:focus-visible { outline:2px solid var(--form-accent); outline-offset:4px; }
.form-privacy-note { max-width:none; font-size:.7rem; line-height:1.65; color:#786c62; }
.form-privacy-link { display:block; width:fit-content; margin-top:.25rem; color:#5d4e43; font-weight:500; }
.form-privacy-link:hover { color:var(--form-accent); }
@media(max-width:700px) {
 .contact-form-card { padding:1.6rem 1.3rem; border-radius:16px; }
 .form-card-header { margin-bottom:1.6rem; padding-bottom:1.5rem; }
 .form-card-mark { width:48px; height:48px; font-size:27px; }
 .form-card-title { font-size:2rem; }
 .contact-form { gap:1.3rem; }
 .form-grid-2 { grid-template-columns:1fr; gap:1.3rem; }
 .form-input { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) { .contact-form-card .form-input, .contact-submit-btn, .contact-submit-btn .submit-btn-arrow { transition:none; } }

.form-optional { margin-left:.35rem; color:#85796f; font-size:.7rem; font-weight:400; }
/* A media-first project viewer with a single, quiet set of controls. */
.project-modal-backdrop { background:#080808e8; backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
.project-modal-dialog { background:#141312; border:1px solid #ffffff18; border-radius:16px; box-shadow:0 28px 90px #0008; backdrop-filter:none; -webkit-backdrop-filter:none; }
.project-modal-header { background:transparent; padding:1.2rem 1.5rem; border-bottom:1px solid #ffffff0d; }
.modal-header-info { display:block; }
.modal-badge { display:block; padding:0; margin-bottom:.35rem; border:0; background:none; font-size:.6rem; font-weight:400; letter-spacing:.12em; color:#b7aaa0; }
.modal-title { font-size:clamp(1.05rem,2vw,1.5rem); font-weight:500; }
.project-modal-close { background:transparent; border-color:#ffffff26; }
.project-modal-body { padding:1rem 1.5rem 1.5rem; scrollbar-width:none; }
.project-modal-body::-webkit-scrollbar { display:none; }
.modal-media-stage-wrap { margin-bottom:.75rem; }
.modal-video-ambient { display:none; }
.modal-media-stage, .modal-video-wrap { background:#0c0c0b; box-shadow:none; border:0; }
.modal-substage-bar { justify-content:flex-end; margin-bottom:1rem; padding:0; border:0; }
.modal-nav-wrap { background:none; border:0; padding:0; border-radius:0; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; gap:.8rem; }
.modal-nav-btn { background:none; border:0; border-radius:5px; color:#c9c0b8; padding:.5rem; font-size:.7rem; }
.modal-nav-btn:hover { background:#ffffff0a; border-color:transparent; transform:none; }
.modal-counter-wrap { font-size:.7rem; font-weight:400; }
.modal-gallery-section { padding:0; }
.modal-gallery-header { display:none; }
.modal-gallery-grid { display:flex; gap:10px; overflow-x:auto; padding:3px 1px 8px; scrollbar-width:thin; }
.modal-gallery-item { width:100px; flex:0 0 100px; aspect-ratio:3/2; border-radius:5px; border:1px solid transparent; opacity:.6; transition:opacity .2s,border-color .2s; }
.modal-gallery-item[aria-pressed="true"] { opacity:1; border-color:#e1c5b1; }
.modal-gallery-item:hover { opacity:1; }
.modal-gallery-item:hover img { transform:none; }
.modal-project-details { max-width:900px; margin:1.2rem auto 0; border-top:1px solid #ffffff17; }
.modal-project-details summary { list-style:none; display:flex; align-items:center; justify-content:space-between; padding:1rem 0; color:#bcb0a5; font-size:.76rem; cursor:pointer; }
.modal-project-details summary::-webkit-details-marker { display:none; }
.modal-project-details summary span { font-size:1.2rem; font-weight:300; }
.modal-project-details[open] summary span { transform:rotate(45deg); }
.modal-project-details .modal-tags-wrap { gap:.6rem; margin:0 0 .8rem; }
.modal-project-details .modal-tag { padding:0; border:0; background:transparent; font-size:.7rem; color:#a99b90; }
.modal-project-details .modal-tag + .modal-tag::before { content:'·'; margin-right:.6rem; }
.modal-project-details .modal-desc { margin:0; max-width:65ch; font-size:.82rem; line-height:1.8; color:#c5bbb2; }
.modal-project-details summary:focus-visible { outline:2px solid var(--cream); outline-offset:3px; }
@media(max-width:700px) {
 .project-modal-dialog { border:0; border-radius:0; }
 .project-modal-header { padding:1rem; }
 .project-modal-body { padding:.8rem 1rem 1.5rem; }
 .modal-title { font-size:1.1rem; }
 .modal-gallery-item { width:76px; flex-basis:76px; }
 .modal-gallery-grid { gap:7px; }
 .modal-project-details { margin-top:.8rem; }
 .modal-project-details .modal-tags-wrap { flex-direction:column; align-items:flex-start; gap:.4rem; }
 .modal-project-details .modal-tag + .modal-tag::before { display:none; }
}
/* Keep native scrolling while hiding only the page's visual scrollbar. */
html, body { scrollbar-width:none; -ms-overflow-style:none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { display:none; width:0; height:0; }
.contact-phone .badge-icon-wrap { background:#843b3210; color:#843b32; }
@media(max-width:700px) {
 .contact-form-container { padding-top:.5rem; }
 .contact-form-card { padding:1.7rem 0 0; border:0; border-top:2px solid var(--form-accent); border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
 .contact-form-card::before { display:none; }
 .form-card-header { padding:0; margin-bottom:1.8rem; border:0; gap:1rem; }
 .form-card-title { font-size:clamp(1.5rem,6.5vw,1.85rem); line-height:1.2; letter-spacing:-.04em; }
 .form-card-title br { display:none; }
 .form-card-mark { width:38px; height:38px; font-size:23px; }
 .contact-form, .form-grid-2 { gap:1.4rem; }
 .form-group { gap:.4rem; }
 .form-label { font-size:.8rem; }
 .contact-form-card .form-input { min-height:48px; padding:.8rem .1rem; border:0; border-bottom:1px solid #c3b6aa; border-radius:0; background:transparent; }
 .contact-form-card .form-input::placeholder { font-size:.88rem; }
 .contact-form-card .form-input:focus { border-color:var(--form-accent); box-shadow:0 2px 0 var(--form-accent); background:#fffdf940; }
 .contact-form-card .form-input.is-invalid { border-color:#dc2626; box-shadow:0 2px 0 #dc2626; }
 .contact-form-card .form-textarea { min-height:120px; resize:vertical; }
 .form-bottom { margin-top:.5rem; text-align:left; }
 .contact-submit-btn { min-height:54px; border-radius:8px; }
 .form-privacy-note { font-size:.72rem; text-align:left; }
 .contact-direct-badges .contact-phone { border-color:#b99082; background:#843b3208; }
}
