:root{--consent-banner-height:0px}
html{scroll-padding-bottom:calc(var(--consent-banner-height) + 20px)}
body{padding-bottom:var(--consent-banner-height)}
.consent-modal-open{overflow:hidden}
.consent-banner{position:fixed;z-index:1000;bottom:0;left:0;right:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:24px max(24px,calc((100vw - var(--content-width))/2));padding-bottom:max(24px,env(safe-area-inset-bottom));background:var(--color-canvas);border-top:2px solid var(--color-plum);box-shadow:0 -8px 32px #3f344115}
.consent-banner h2{font:400 25px/1.3 var(--font-heading);margin:0 0 10px;color:var(--color-ink)}
.consent-banner p{font-size:13px;line-height:1.7;max-width:720px;margin:0;color:var(--color-muted)}
.consent-banner a,.consent-dialog a,.cookie-policy a,.health-notice a{color:var(--color-plum);text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px}
.consent-banner .consent-actions{display:grid;grid-template-columns:repeat(3,1fr)}
.consent-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;font:600 13px/1.4 var(--font-body);color:var(--color-white);background:var(--color-plum);border:1px solid var(--color-plum);border-radius:var(--radius-sm);cursor:pointer;text-align:center}
.consent-button:hover{background:var(--color-ink);border-color:var(--color-ink)}
.consent-button:active{transform:translateY(1px)}
.consent-outline{background:transparent;color:var(--color-plum)}
.consent-outline:hover{background:var(--color-soft);color:var(--color-ink)}
.consent-button:focus-visible,.consent-close:focus-visible,.footer-consent-button:focus-visible,.consent-social-label input:focus-visible{outline:3px solid var(--color-ink);outline-offset:4px}
.consent-dialog{position:fixed;inset:0;margin:auto;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-canvas);color:var(--color-ink);box-shadow:0 24px 70px #3f344130;font:400 14px/1.75 var(--font-body)}
.consent-dialog::backdrop{background:#3f344180}
.consent-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.consent-dialog h2{font:400 30px/1.3 var(--font-heading);margin:4px 0 16px}
.consent-dialog p{margin:0 0 16px;color:var(--color-muted)}
.consent-close{display:inline-grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:transparent;color:var(--color-ink);font-size:28px;line-height:1;cursor:pointer}
.consent-close:hover{background:var(--color-soft)}
.consent-category{padding:20px 0;border-top:1px solid var(--color-line)}
.consent-category p{margin:10px 0 0;font-size:13px}
.consent-category-title{display:flex;align-items:center;justify-content:space-between;gap:16px}
.consent-category-title h3{font:600 15px/1.5 var(--font-body);margin:0}
.consent-category-title span{font-size:12px;color:var(--color-muted);white-space:nowrap}
.consent-social-label{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;font-weight:600;cursor:pointer;min-height:44px}
.consent-social-label input{width:24px;height:24px;flex-shrink:0;accent-color:var(--color-plum);cursor:pointer}
.consent-dialog .consent-detail{font-size:12px;border-top:1px solid var(--color-line);padding-top:18px}
.consent-dialog-actions{display:grid;grid-template-columns:1fr 1fr}
.consent-dialog-actions [data-consent-save]{grid-column:1/-1}
.consent-feedback{position:relative;max-width:var(--content-width);margin:0 auto;padding:16px 24px;background:var(--color-soft);font-size:13px;color:var(--color-ink)}
.footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding:20px 0;border-top:1px solid var(--color-line);font-size:12px}
.footer-legal a,.footer-consent-button{text-decoration:underline;text-underline-offset:4px}
.footer-consent-button{border:0;background:transparent;padding:8px 0;font:inherit;color:inherit;cursor:pointer;min-height:44px}
.footer-consent-button:hover,.footer-legal a:hover{color:var(--color-plum)}
.linkedin-placeholder{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;min-height:340px;padding:28px;background:var(--color-canvas)}
.linkedin-placeholder h3{font:400 23px/1.3 var(--font-heading);margin:0}
.linkedin-placeholder p{font-size:13px;line-height:1.8;color:var(--color-muted);margin:0}
.linkedin-placeholder a{color:var(--color-plum);text-decoration:underline;text-underline-offset:3px}
.health-notice{padding:24px 0;margin-top:32px;border-top:1px solid var(--color-line);max-width:980px}
.health-notice h2{font:600 14px/1.6 var(--font-body);margin:0 0 8px}
.health-notice p{font-size:13px;line-height:1.9;color:var(--color-muted);margin:0}
.health-notice.wrap{padding-bottom:48px}
.cookie-policy{max-width:860px;padding:64px 24px 80px;margin:auto}
.cookie-policy h1{font:400 clamp(32px,5vw,50px)/1.2 var(--font-heading);margin:0 0 24px}
.cookie-policy h2{font:400 26px/1.3 var(--font-heading);margin:36px 0 14px}
.cookie-policy p,.cookie-policy li{font-size:15px;line-height:1.9;color:var(--color-muted);margin-bottom:14px}
.cookie-policy ul{padding-left:22px}
.cookie-policy .policy-date{font-size:12px}
.kvkk-request-note{padding:20px;border:1px solid var(--color-line);background:var(--color-canvas)}
.kvkk-request-note p{font-size:13px;line-height:1.8;margin:10px 0;color:var(--color-muted)}
.kvkk-request-note button{font:inherit;font-size:13px;border:0;padding:8px 0;background:none;cursor:pointer;min-height:44px}
.form-notice a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.consent-banner{grid-template-columns:1fr;gap:16px}.consent-actions{justify-content:flex-start}}
@media(max-width:560px){.consent-banner{padding:18px;max-height:65dvh;overflow:auto}.consent-banner h2{font-size:22px}.consent-banner .consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-banner [data-consent-open]{grid-column:1/-1}.consent-button{padding:12px 10px}.consent-dialog{padding:20px;max-height:calc(100dvh - 24px)}.consent-dialog h2{font-size:26px}.consent-category-title{align-items:flex-start}.linkedin-placeholder{min-height:300px}}
@media(forced-colors:active){.consent-button,.consent-close{border:1px solid ButtonText}.consent-dialog{border:2px solid CanvasText}}
@media print{.consent-banner,.consent-dialog,.consent-feedback,[data-consent-open]{display:none!important}body{padding-bottom:0}}
