/* Wild Wings: wspolny layout, bez kolorow na sztywno. */
/* Kolory są definiowane wyłącznie w pliku themes/*.css */
        * { box-sizing:border-box; }
        html { min-height:100%; background:var(--html-bg); }
        body { margin:0; min-height:100svh; color:var(--ink); font-family:'DM Sans',sans-serif; background:var(--page-bg); }
        body::after { content:''; pointer-events:none; position:fixed; inset:0; opacity:var(--grain-opacity); background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.17' filter='url(%23n)'/%3E%3C/svg%3E"); }
        .shell { position:relative; z-index:1; width:min(1440px,100%); min-height:100svh; margin:auto; display:flex; flex-direction:column; padding:38px clamp(24px,5.9vw,96px) 29px; }
        header,footer { display:flex; align-items:center; justify-content:space-between; gap:20px; }
        .brand { display:inline-flex; align-items:center; text-decoration:none; color:inherit; }
        .logo-slot { display:flex; align-items:center; justify-content:center; width:250px; height:140px; }
        .logo-slot img {
            display:block; width: 250px; height: 250px; object-fit:contain;
        }
        .top-note,.foot-note { text-transform:uppercase; font-size:10px; letter-spacing:.25em; color:var(--muted); }
        .top-note { text-align:right; }
        main { flex:1; display:grid; grid-template-columns:minmax(0,1.4fr) minmax(285px,.6fr); align-items:center; gap:clamp(50px,7vw,120px); padding:80px 0 105px; }
        .eyebrow { display:flex; align-items:center; gap:15px; text-transform:uppercase; font-weight:600; letter-spacing:.32em; font-size:11px; color:var(--eyebrow); }
        .eyebrow:before { content:''; width:34px; height:1px; background:var(--eyebrow-line); }
        h1 { max-width:850px; font-family:'Italiana',Georgia,serif; font-weight:400; letter-spacing:-.035em; line-height:.99; font-size:clamp(67px,9.3vw,142px); margin:36px 0 36px; }
        h1 span { display:block; color:var(--hero-accent); background:var(--hero-gradient); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; font-style:italic; }
        .intro { max-width:520px; line-height:1.9; color:var(--intro); font-size:clamp(14px,1.15vw,16px); margin:0; }
        .features { display:flex; flex-wrap:wrap; gap:15px 27px; margin-top:46px; color:var(--features); font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
        .features span:before { content:'✧'; margin-right:10px; color:var(--feature-mark); font-size:16px; vertical-align:-1px; }
        .signup { border:1px solid var(--line); padding:clamp(26px,3.1vw,46px); background:var(--card-bg); box-shadow:var(--card-shadow); }
        .signup-number { color:var(--card-number); font-size:11px; letter-spacing:.24em; }
        h2 { font-family:'Italiana',Georgia,serif; font-size:clamp(34px,3vw,49px); font-weight:400; line-height:1.15; margin:24px 0 18px; }
        .signup-text { margin:0 0 32px; font-size:13px; line-height:1.8; color:var(--card-copy); }
        label[for=email] { display:block; margin-bottom:10px; font-size:10px; font-weight:700; letter-spacing:.17em; text-transform:uppercase; }
        input[type=email] { width:100%; background:var(--input-bg); color:var(--input-text); border:1px solid var(--input-border); padding:17px 15px; font:14px 'DM Sans',sans-serif; border-radius:0; outline:none; transition:border-color .2s; }
        input[type=email]:focus { border-color:var(--input-focus); }
        input::placeholder { color:var(--placeholder); }
        .consent { display:flex; gap:11px; align-items:flex-start; margin:19px 0 23px; font-size:11px; line-height:1.65; color:var(--consent-text); cursor:pointer; }
        .consent input { appearance:none; flex:none; width:16px; height:16px; margin:1px 0 0; border:1px solid var(--check-border); background:transparent; cursor:pointer; }
        .consent input:checked { background:var(--check-bg); box-shadow:inset 0 0 0 3px var(--check-inset); }
        button { border:1px solid var(--button-border); background:var(--button-bg); color:var(--button-text); min-height:55px; padding:14px 16px; width:100%; font:700 11px 'DM Sans',sans-serif; text-transform:uppercase; letter-spacing:.13em; cursor:pointer; transition:background .2s,transform .2s; }
        button:hover { background:var(--button-hover); transform:translateY(-2px); }
        .message { margin:0 0 20px; padding:12px 14px; border:1px solid var(--message-border); font-size:12px; line-height:1.6; }
        .message.error { border-color:var(--error-border); }
        .fine-print { margin:18px 0 0; font-size:10px; line-height:1.7; color:var(--fine-print); }
        .hidden-field { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
        footer { border-top:1px solid var(--line); padding-top:25px; }
        footer a { color:var(--footer-link); text-decoration:none; font-size:11px; letter-spacing:.09em; }
        footer a:hover { text-decoration:underline; }
        @media (max-width:850px) { .shell { padding-top:22px; } main { grid-template-columns:1fr; gap:54px; padding:90px 0 75px; } h1 { font-size:clamp(64px,13vw,108px); } .signup { max-width:520px; } }
        @media (max-width:530px) { .logo-slot { width:112px; height:84px; } .top-note { font-size:8px; letter-spacing:.13em; } main { padding:85px 0 55px; } h1 { font-size:clamp(64px,17vw,92px); } .features { gap:11px 20px; } footer { flex-direction:column; align-items:flex-start; } }
        @media (prefers-reduced-motion:reduce) { *,*:before,*:after { scroll-behavior:auto!important; transition:none!important; } }
